/* Homepage-only design reconciliation. Shared offer-page styles stay intact. */
body{background:#FFFFFF}
.header{border-bottom:1px solid #D8D8D2}
.home-hero,.featured-offer,.home-experience,.home-summary{background:#FFFFFF}
.home-hero{padding-bottom:64px}
.featured-offer{padding-top:24px;padding-bottom:80px}

/* Visit, book and enquire retain the shared, once-on-entry lime reveal. */

/* Loop the five weather states while the campaign artwork is in view. */
.weather-story .weather-state{position:absolute;inset:0;display:flex;flex-direction:column;gap:7px;opacity:0}
.weather-story:not(.is-playing) .weather-state.snow{opacity:1}
.weather-story.is-playing .weather-state{animation:weather-cycle 15s linear infinite}
.weather-story.is-playing .weather-state.rain{animation-delay:3s}
.weather-story.is-playing .weather-state.storm{animation-delay:6s}
.weather-story.is-playing .weather-state.night{animation-delay:9s}
.weather-story.is-playing .weather-state.snow{animation-delay:12s}
@keyframes weather-cycle{0%,16%{opacity:1}20%,100%{opacity:0}}

/* Restore the established emphasis in the Expert help section. */
.home-experience .heading-highlight,
.home-experience .word-highlight,
.highlight-ready .home-experience .heading-highlight.is-visible,
.highlight-ready .home-experience .word-highlight.is-visible{background:#CBE65A;color:#111110}
.home-experience .heading-highlight{padding:0 .07em .06em}
.home-experience .word-highlight{padding:0 .08em .05em}

/* The two offer highlights share solid white, tying the promise to the response. */
.offer-heading-highlight{background:#FFFFFF;color:#111110;padding:0 .07em .06em}
.offer-copy-highlight{background:#FFFFFF;color:#111110;padding:0 .08em .05em}
.service-heading-highlight{background:#14B8C8;color:#111110;padding:0 .07em .06em}
.highlight-ready .offer-heading-highlight,
.highlight-ready .offer-copy-highlight,
.highlight-ready .service-heading-highlight{background-color:transparent;transition:background-color 520ms ease}
.highlight-ready .offer-heading-highlight.is-visible{background-color:#FFFFFF}
.highlight-ready .offer-copy-highlight.is-visible{background-color:#FFFFFF}
.highlight-ready .service-heading-highlight.is-visible{background-color:#14B8C8}

/* The ticker is an index; the white cards below carry the explanations. */
.service-overview{background:#111110;padding-top:32px}
.service-overview .ticker-head{margin-bottom:10px}
.service-overview .ticker{gap:0;padding-bottom:24px;border-bottom:1px solid #FFFFFF30}
.service-overview .ticker-group{gap:0}
.service-overview .ticker-group>a{min-width:0;min-height:56px;padding:12px 24px;border:0;border-right:1px solid #FFFFFF38;border-radius:0;background:transparent;color:#FFFFFF;font-size:19px;box-shadow:none}
.service-overview .ticker-group>a:hover,.service-overview .ticker-group>a:focus-visible{background:transparent;color:#CBE65A;text-decoration:underline;text-underline-offset:6px}
.service-overview .ticker:focus-visible,.service-overview .ticker-group>a:focus-visible,.service-overview #ticker-toggle:focus-visible{outline:2px solid #CBE65A;outline-offset:-2px}
.service-families{padding:64px 0 52px}
.service-families-head{display:grid;grid-template-columns:1.25fr 1fr;align-items:end;gap:64px;margin-bottom:38px}
.service-families-head h2{font:700 clamp(42px,4.8vw,72px)/1.08 Syne,Arial,sans-serif;letter-spacing:-.05em;margin-top:20px}
.service-family-intro{font-size:clamp(18px,1.7vw,23px);line-height:1.5;max-width:36ch;padding-bottom:4px}
.service-browse{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:18px}
.service-browse>p{font-size:14px;color:#D8D8D2}
.service-family-controls button:disabled{opacity:.3;cursor:default;background:transparent;color:#FFFFFF;border-color:#FFFFFF80}
.service-family-controls button:focus-visible{outline:2px solid #CBE65A;outline-offset:4px}
.service-family-track{position:relative;grid-auto-columns:clamp(330px,32vw,440px);gap:18px;padding-bottom:12px;scrollbar-width:thin;scrollbar-color:#858681 #111110;scroll-behavior:smooth}
.service-family-card{width:100%;min-width:0;aspect-ratio:auto;min-height:430px;height:auto;padding:30px;box-shadow:none}
.service-family-card>span{font-size:11px;line-height:1.5;letter-spacing:.06em;min-height:3em;max-width:31ch}
.service-family-card{--service-accent:#CBE65A}
.service-family-card:nth-child(2){--service-accent:#14B8C8}
.service-family-card:nth-child(3){--service-accent:#FFBF00}
.service-family-card:nth-child(4){--service-accent:#00A93C}
.service-family-card:nth-child(5){--service-accent:#FF6F61}
.service-family-card:nth-child(6){--service-accent:#14B8C8}
.service-family-number{display:inline-block;background:var(--service-accent);color:#111110;padding:2px 5px;margin-right:3px;border-radius:2px;font-weight:500;line-height:1.3}
.service-family-card h3{font-size:clamp(28px,2.4vw,35px);line-height:1.1;margin:24px 0 20px;max-width:19ch}
.service-family-card p{font-size:var(--t-body);line-height:var(--lh-body);max-width:35ch;margin-bottom:30px}
.service-family-card a{min-height:46px;padding-top:16px;color:#111110}
.service-family-card a:hover{color:#111110;text-decoration:underline;text-underline-offset:5px}
.service-family-card a:focus-visible{color:#111110;outline:2px solid #111110;outline-offset:5px}
.service-next{display:flex;justify-content:space-between;align-items:center;gap:32px;margin-top:28px}
.service-next>p{font-size:17px;line-height:1.5;color:#D8D8D2}
.service-shared-action{display:inline-flex;align-items:center;gap:32px;font-size:21px;white-space:nowrap;padding-block:10px}
.service-shared-action>span{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:50%;background:#14B8C8;color:#111110;font-size:26px}
.service-shared-action:hover{text-decoration:underline;text-underline-offset:6px}
.service-shared-action:focus-visible{outline:2px solid #CBE65A;outline-offset:5px}

/* Experience and working principles share one clear white section. */
.home-experience{padding-top:76px;padding-bottom:56px}
.home-summary{padding-top:0;padding-bottom:76px}
.home-summary>.eyebrow{padding-top:24px;border-top:1px solid #D8D8D2;margin-bottom:28px}
.summary-grid{gap:32px}
.summary-grid article{background:transparent;border-radius:0;box-shadow:none;min-height:0;padding:0;display:flex;gap:0}
.summary-grid article+article{border-left:1px solid #D8D8D2;padding-left:32px}
.summary-grid h3{font-size:clamp(25px,2.15vw,32px);margin:22px 0 0}
.summary-grid p{margin-top:16px}

@media(max-width:900px){
  .service-families-head{gap:36px;grid-template-columns:1.1fr 1fr}
  .service-next{gap:24px}
  .service-shared-action{font-size:18px;gap:18px}
}
@media(max-width:760px){
  .home-hero{padding-bottom:42px}
  .featured-offer{padding-top:20px;padding-bottom:52px}
  .service-overview{padding-top:24px}
  .service-overview .ticker-group>a{font-size:17px;min-height:48px;padding:10px 20px}
  .service-overview .ticker{padding-bottom:18px}
  .service-families{padding-top:40px;padding-bottom:38px}
  .service-families-head{grid-template-columns:1fr;gap:24px;margin-bottom:26px}
  .service-families-head h2{font-size:clamp(37px,9.3vw,54px);margin-top:16px}
  .service-family-intro{font-size:18px;max-width:36ch}
  .service-browse{gap:14px;margin-bottom:16px}
  .service-browse>p{font-size:13px;max-width:20ch}
  .service-family-track{grid-auto-columns:calc(100% - var(--gutter));gap:14px}
  .service-family-card{padding:25px;min-height:420px}
  .service-family-card h3{font-size:28px;margin-top:22px}
  .service-family-card p{font-size:var(--t-body);margin-bottom:24px}
  .service-next{display:block;margin-top:24px}
  .service-next>p{font-size:16px}
  .service-shared-action{font-size:20px;margin-top:18px;gap:28px}
  .home-experience{padding-top:48px;padding-bottom:40px}
  .home-summary{padding-bottom:48px}
  .summary-grid{gap:24px}
  .summary-grid article+article{border-left:0;border-top:1px solid #D8D8D2;padding:24px 0 0}
  .summary-grid h3{font-size:28px;margin-top:16px}
}
@media(prefers-reduced-motion:reduce){.service-family-track{scroll-behavior:auto}}

/* Final hierarchy: a clear header action, a practical enquiry, a Studio sign-off. */
.header{min-height:96px;gap:36px}
.header nav{align-items:center;gap:28px}
.header nav .header-contact{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:44px;padding:12px 18px;border-radius:6px;background:#111110;color:#FFFFFF;white-space:nowrap}
.header nav .header-contact:hover,.header nav .header-contact:focus-visible{text-decoration:none;background:#14B8C8;color:#111110}
.header-contact>span{font-size:20px;line-height:1}
.home-experience h2{font-size:clamp(37px,3.9vw,56px);line-height:1.2}
.home-enquiry .studio-heading h2{font:500 clamp(36px,3.4vw,49px)/1.12 Work,Arial,sans-serif;letter-spacing:-.045em;max-width:18ch}
.home-enquiry .studio-heading h2 em{font:italic 400 1em/1.05 Georgia,serif;letter-spacing:-.025em}
.home-enquiry-form input:focus,
.home-enquiry-form textarea:focus,
.home-enquiry-form select:focus{outline:2px solid #111110;outline-offset:3px}

/* Action arrows move once in their own direction. Circles remain still. */
.header-contact>span,
.offer-button>span,
.home-enquiry-form .enquiry-action>span,
.service-family-card a>b,
.text-link>span,
.studio-footer-panel .studio-copy>a>span,
.footer-email>span,
.service-shared-action .arrow-glyph{display:inline-block;transform:none;transition:transform 180ms ease;animation:none}
.header-contact:is(:hover,:focus-visible)>span,
.offer-button:is(:hover,:focus-visible)>span,
.home-enquiry-form .enquiry-action:is(:hover,:focus-visible)>span,
.service-family-card a:is(:hover,:focus-visible)>b,
.text-link:is(:hover,:focus-visible)>span,
.studio-footer-panel .studio-copy>a:is(:hover,:focus-visible)>span,
.footer-email:is(:hover,:focus-visible)>span,
.service-shared-action:is(:hover,:focus-visible) .arrow-glyph{animation:none;transform:translate(3px,-3px)}
.home-hero .circle{transition:background-color 180ms ease}
.home-hero .circle:focus-visible{background:#14B8C8;outline:2px solid #111110;outline-offset:4px}

@media(max-width:760px){
  .header{min-height:88px;gap:16px}
  .header nav{gap:14px}
  .header nav .header-contact{gap:10px;padding:10px 12px}
  .header-contact>span{font-size:18px}
  .hero-kicker>span:last-child{display:inline}
  .hero-bottom>p:not(.hero-note){grid-column:1;grid-row:1}
  .home-hero .circle{grid-column:2;grid-row:1}
  .hero-note{display:block;grid-column:1/-1;grid-row:2;font-size:12px;line-height:1.4;margin-top:4px;white-space:nowrap}
  .hero-note br{display:none}
  .home-experience h2{font-size:37px}
  .home-enquiry .studio-heading h2{font-size:clamp(30px,8.6vw,38px)}
  .home-enquiry,
  .studio-footer-panel{margin-inline:0;padding-left:var(--gutter);padding-right:var(--gutter)}
  .legal-footer{margin-inline:0}
}
@media(max-width:480px){
  .service-family-card{padding:20px}
  .home-hero .eyebrow,
  .featured-offer .eyebrow,
  .service-overview .eyebrow,
  .home-experience .eyebrow,
  .home-summary>.eyebrow,
  .home-summary .summary-grid article>span,
  .home-enquiry .eyebrow,
  .studio-footer-panel .eyebrow{font-size:11px}
  .offer-footnote{font-size:12px}
}
@media(max-width:360px){
  .header{gap:12px}
  .header nav{gap:12px}
  .header nav .header-contact{gap:8px;padding-inline:10px}
}
@media(prefers-reduced-motion:reduce){
  .highlight-ready .offer-heading-highlight{background-color:#FFFFFF}
  .highlight-ready .offer-copy-highlight{background-color:#FFFFFF}
  .highlight-ready .service-heading-highlight{background-color:#14B8C8}
  .weather-story .weather-state{animation:none!important;opacity:0}
  .weather-story .weather-state.snow{opacity:1}
  .header-contact>span,
  .offer-button>span,
  .home-enquiry-form .enquiry-action>span,
  .service-family-card a>b,
  .text-link>span,
  .studio-footer-panel .studio-copy>a>span,
  .footer-email>span,
  .service-shared-action .arrow-glyph{transition:none!important;animation:none!important;transform:none!important}
}
