.services-page {
    --sp-navy:#101828;
    --sp-navy-2:#17233a;
    --sp-navy-3:#22314d;
    --sp-gold:#c28a48;
    --sp-gold-dark:#a87336;
    --sp-gold-soft:#f7efe5;
    --sp-ink:#171717;
    --sp-copy:#667085;
    --sp-line:#e4e7ec;
    --sp-canvas:#faf8f4;
    width:100%;
    overflow:hidden;
    background:#fff;
    color:var(--sp-ink);
}

.services-page *,
.services-page *::before,
.services-page *::after { box-sizing:border-box; }

.services-page em { color:var(--sp-gold); font-style:normal; }
.services-container { width:min(calc(100% - 64px),1360px); margin:0 auto; }

.services-eyebrow {
    display:flex;
    align-items:center;
    gap:14px;
    color:var(--sp-gold);
    font-size:12px;
    font-weight:700;
    letter-spacing:.22em;
}
.services-eyebrow>span { width:28px; height:1px; display:block; background:var(--sp-gold); }
.services-eyebrow-center { justify-content:center; }

.services-section-heading { margin-bottom:40px; }
.services-section-heading-center { max-width:850px; margin-left:auto; margin-right:auto; text-align:center; }
.services-section-heading h2 {
    margin:14px 0 0;
    color:var(--sp-navy);
    font-size:clamp(34px,3.1vw,50px);
    line-height:1.12;
    font-weight:500;
    letter-spacing:-.035em;
}
.services-section-heading>p {
    max-width:680px;
    margin:15px auto 0;
    color:var(--sp-copy);
    font-size:16px;
    line-height:1.75;
}

.services-hero {
    padding:38px 0 72px;
    color:#fff;
    background:
        radial-gradient(circle at 90% 12%,rgba(194,138,72,.22),transparent 34%),
        linear-gradient(115deg,#101828 0%,#14223a 55%,#263650 100%);
}
.services-breadcrumb { display:flex; align-items:center; gap:8px; margin-bottom:34px; color:rgba(255,255,255,.7); font-size:13px; }
.services-breadcrumb a { color:var(--sp-gold); text-decoration:none; }
.services-breadcrumb i { font-size:16px; color:rgba(255,255,255,.4); }
.services-hero-copy { max-width:900px; }
.services-hero h1 {
    margin:20px 0 18px;
    color:#fff;
    font-family:"Playfair Display",Georgia,serif;
    font-size:clamp(48px,4.7vw,74px);
    line-height:1.04;
    font-weight:600;
    letter-spacing:-.045em;
}
.services-hero-copy>p { max-width:800px; margin:0; color:rgba(255,255,255,.8); font-size:17px; line-height:1.8; }

.services-overview { padding:78px 0 84px; background:var(--sp-canvas); }
.services-card-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.services-card {
    min-height:330px;
    padding:28px;
    border:1px solid var(--sp-line);
    border-radius:18px;
    background:#fff;
    box-shadow:0 14px 38px rgba(16,24,40,.045);
    transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.services-card:hover { transform:translateY(-4px); border-color:rgba(194,138,72,.38); box-shadow:0 20px 44px rgba(16,24,40,.08); }
.services-card-icon { width:52px; height:52px; display:grid; place-items:center; margin-bottom:20px; border-radius:14px; color:var(--sp-gold-dark); background:var(--sp-gold-soft); font-size:23px; }
.services-card h3 { margin:0 0 9px; color:var(--sp-navy); font-size:20px; font-weight:600; line-height:1.3; }
.services-card>p { margin:0 0 17px; color:var(--sp-copy); font-size:14px; line-height:1.72; }
.services-card ul { display:grid; gap:9px; margin:0; padding:0; list-style:none; }
.services-card li { position:relative; padding-left:17px; color:#475467; font-size:13px; line-height:1.45; }
.services-card li::before { content:""; position:absolute; top:.55em; left:0; width:6px; height:6px; border-radius:50%; background:var(--sp-gold); }

.services-feature-section { padding:82px 0; background:#fff; }
.services-feature-dark {
    color:#fff;
    background:
        radial-gradient(circle at 90% 10%,rgba(194,138,72,.17),transparent 34%),
        linear-gradient(115deg,#101828 0%,#172a46 100%);
}
.services-feature-grid { display:grid; grid-template-columns:1fr 1.05fr; gap:54px; align-items:center; }
.services-feature-grid-reverse { grid-template-columns:1.05fr 1fr; }
.services-feature-copy h2 {
    margin:15px 0 8px;
    color:var(--sp-navy);
    font-family:"Playfair Display",Georgia,serif;
    font-size:clamp(38px,3.4vw,54px);
    line-height:1.08;
    font-weight:600;
    letter-spacing:-.04em;
}
.services-feature-copy h3 { margin:0 0 23px; color:var(--sp-gold-dark); font-size:20px; line-height:1.45; font-weight:500; }
.services-feature-copy>p { margin:0; color:#475467; font-size:15px; line-height:1.82; }
.services-feature-copy-light h2 { color:#fff; }
.services-feature-copy-light h3 { color:#e1b57b; }
.services-feature-copy-light>p { color:rgba(255,255,255,.73); }

.services-metric-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:30px; }
.services-metric { min-height:130px; padding:21px 22px; border:1px solid #eadfce; border-radius:10px; background:#fff; box-shadow:0 8px 22px rgba(16,24,40,.04); }
.services-metric strong { display:block; margin-bottom:9px; color:var(--sp-gold-dark); font-family:"Playfair Display",Georgia,serif; font-size:22px; font-weight:600; }
.services-metric span { display:block; color:var(--sp-copy); font-size:13px; line-height:1.55; }
.services-metric-light { border-color:rgba(255,255,255,.15); background:rgba(255,255,255,.07); box-shadow:none; }
.services-metric-light strong { color:#fff; }
.services-metric-light span { color:rgba(255,255,255,.66); }

.services-image-placeholder {
    min-height:520px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    border-radius:20px;
    border:1px solid var(--sp-line);
    background:linear-gradient(135deg,#f4f1ec 0%,#e7e2db 100%);
    box-shadow:0 24px 55px rgba(16,24,40,.10);
}
.services-rental-image { border-color:rgba(255,255,255,.10); background:linear-gradient(135deg,#1b2a45 0%,#2b3d5e 100%); }
.services-placeholder-content { display:flex; flex-direction:column; align-items:center; gap:7px; padding:30px; text-align:center; color:#667085; }
.services-rental-image .services-placeholder-content { color:rgba(255,255,255,.62); }
.services-placeholder-content i { color:var(--sp-gold); font-size:46px; }
.services-placeholder-content strong { font-size:16px; font-weight:600; }
.services-placeholder-content span { font-size:13px; }

.services-audience { padding:78px 0 84px; background:var(--sp-canvas); }
.services-audience-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.services-audience-card {
    min-height:250px;
    padding:28px;
    border-radius:18px;
    color:#fff;
    background:
        radial-gradient(circle at 100% 0%,rgba(194,138,72,.14),transparent 40%),
        linear-gradient(145deg,#101828,#1b2e4a);
}
.services-audience-icon { width:50px; height:50px; display:grid; place-items:center; margin-bottom:20px; border-radius:13px; background:rgba(255,255,255,.08); color:var(--sp-gold); font-size:22px; }
.services-audience-card h3 { margin:0 0 10px; color:#fff; font-size:18px; font-weight:600; }
.services-audience-card p { margin:0; color:rgba(255,255,255,.72); font-size:14px; line-height:1.72; }

.services-process { padding:80px 0 88px; background:#fff; }
.services-process-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.services-process-card { min-height:225px; padding:26px; border:1px solid var(--sp-line); border-radius:18px; background:#fff; }
.services-process-number { width:44px; height:44px; display:grid; place-items:center; margin-bottom:18px; border-radius:12px; background:var(--sp-gold); color:var(--sp-navy); font-size:14px; font-weight:700; }
.services-process-card h3 { margin:0 0 10px; color:var(--sp-navy); font-size:17px; font-weight:600; }
.services-process-card p { margin:0; color:var(--sp-copy); font-size:13px; line-height:1.72; }

.services-cta-section { padding:68px 0 78px; background:var(--sp-canvas); }
.services-cta {
    display:grid;
    grid-template-columns:1.25fr .75fr;
    gap:50px;
    align-items:center;
    padding:42px 46px;
    border-radius:22px;
    color:#fff;
    background:
        radial-gradient(circle at 100% 0%,rgba(194,138,72,.20),transparent 35%),
        linear-gradient(115deg,#101828 0%,#172a46 100%);
}
.services-cta h2 { margin:16px 0 10px; color:#fff; font-size:clamp(29px,2.5vw,40px); line-height:1.2; font-weight:500; }
.services-cta p { max-width:680px; margin:0; color:rgba(255,255,255,.74); font-size:14px; line-height:1.75; }
.services-cta-actions { display:grid; gap:10px; }
.services-cta-primary,.services-cta-secondary { min-height:54px; display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:0 18px; border-radius:999px; text-decoration:none; font-size:12px; font-weight:700; letter-spacing:.08em; transition:transform .2s ease,background .2s ease; }
.services-cta-primary { color:var(--sp-navy); background:var(--sp-gold); }
.services-cta-primary:hover,.services-cta-secondary:hover { transform:translateY(-2px); }
.services-cta-secondary { border:1px solid rgba(255,255,255,.24); color:#fff; background:rgba(255,255,255,.04); }

@media (max-width:1100px) {
    .services-card-grid { grid-template-columns:repeat(2,1fr); }
    .services-audience-grid,.services-process-grid { grid-template-columns:repeat(2,1fr); }
    .services-feature-grid,.services-feature-grid-reverse { grid-template-columns:1fr 1fr; gap:34px; }
}

@media (max-width:850px) {
    .services-feature-grid,.services-feature-grid-reverse { grid-template-columns:1fr; }
    .services-feature-grid-reverse .services-rental-image { order:2; }
    .services-feature-grid-reverse .services-feature-copy { order:1; }
    .services-image-placeholder { min-height:420px; }
    .services-cta { grid-template-columns:1fr; gap:28px; }
}

@media (max-width:680px) {
    .services-container { width:calc(100% - 30px); }
    .services-eyebrow { gap:10px; font-size:10px; letter-spacing:.17em; }
    .services-eyebrow>span { width:22px; }
    .services-hero { padding:25px 0 44px; }
    .services-breadcrumb { margin-bottom:27px; font-size:12px; }
    .services-hero h1 { margin-top:16px; font-size:39px; line-height:1.06; }
    .services-hero-copy>p { font-size:15px; line-height:1.7; }
    .services-overview,.services-audience,.services-process { padding:48px 0 54px; }
    .services-section-heading { margin-bottom:29px; }
    .services-section-heading h2 { font-size:32px; }
    .services-section-heading>p { margin-top:12px; font-size:14px; line-height:1.7; }
    .services-card-grid,.services-audience-grid,.services-process-grid { grid-template-columns:1fr; gap:11px; }
    .services-card { min-height:0; padding:22px; border-radius:16px; }
    .services-card-icon { width:47px; height:47px; margin-bottom:16px; }
    .services-feature-section { padding:50px 0 56px; }
    .services-feature-grid,.services-feature-grid-reverse { gap:28px; }
    .services-feature-copy h2 { font-size:34px; }
    .services-feature-copy h3 { margin-bottom:17px; font-size:17px; }
    .services-feature-copy>p { font-size:14px; line-height:1.75; }
    .services-metric-grid { grid-template-columns:1fr; gap:10px; margin-top:23px; }
    .services-metric { min-height:0; padding:18px; }
    .services-metric strong { font-size:19px; }
    .services-image-placeholder { min-height:320px; border-radius:17px; }
    .services-audience-card,.services-process-card { min-height:0; padding:22px; }
    .services-cta-section { padding:44px 0 52px; }
    .services-cta { padding:29px 20px; border-radius:18px; }
    .services-cta h2 { font-size:29px; }
    .services-cta-primary,.services-cta-secondary { width:100%; min-height:51px; }
}

@media (max-width:390px) {
    .services-hero h1 { font-size:35px; }
    .services-section-heading h2 { font-size:29px; }
    .services-feature-copy h2 { font-size:31px; }
}
