/* Homepage refinements retain the original palette, typography, and logo. */
.home-page .primary-nav{flex-wrap:wrap;gap:18px}
.home-page .primary-nav>.nav-links{order:0;width:auto;margin-left:auto;gap:24px}
.header-actions{display:flex;align-items:center;gap:10px}
.menu-toggle{min-height:44px;padding:10px 16px;border:1px solid var(--toggle-border);background:transparent;color:var(--ink);font:500 14px Figtree,Arial,sans-serif;cursor:pointer}
.home-page .s11{padding-block:80px;gap:56px;align-items:center}
.home-page .s12{gap:24px;flex-basis:570px}
.home-page .s14{font-size:clamp(38px,4.5vw,64px);line-height:1.13}
.home-page .s16{font-size:18px;max-width:620px}
.home-page .s13,.home-page .s37{font-size:12px;letter-spacing:.17em}
.home-page .s17{gap:12px;padding-top:0}
.home-page .s18,.home-page .s19{padding:14px 22px;letter-spacing:.015em}
.hero-context{margin:4px 0 0;font-size:13px;line-height:1.8;color:#b9b3a8}
.hero-context span{margin-inline:8px;color:#c9a876}
.home-page .architecture-card{flex-basis:350px;padding:36px 32px;gap:24px}
.home-page .s22{margin:0;font-size:11px}
.home-page .s23{font-size:32px;line-height:1.25}
.starting-points{list-style:none;margin:0;padding:0;display:grid}
.starting-points li{display:flex;gap:16px;padding:18px 0;border-top:1px solid #35404b}
.starting-points li>span{font-size:12px;color:#c9a876;padding-top:3px}
.starting-points strong{font-size:15px;font-weight:500;color:#ede8df}
.starting-points p{margin:4px 0 0;color:#b9b3a8;font-size:14px}
.card-link{display:flex;align-items:center;justify-content:space-between;min-height:44px;color:#c9a876;font-size:14px;border-top:1px solid #35404b;padding-top:14px}
.card-link:hover{color:#ede8df}
.home-page #services,.home-page .approach-inner,.home-page .about-inner,.home-page .s95{padding:80px 32px}
.section-heading{max-width:740px;display:flex;flex-direction:column;gap:18px;margin-bottom:36px}
.home-page .s38{font-size:clamp(32px,3.6vw,46px);line-height:1.18}
.home-page .service-grid{border-top:1px solid var(--line-d9d2c5,#d9d2c5)}
.home-page .service-grid>article{padding-top:30px;padding-bottom:12px;gap:18px}
.home-page .s42{font-size:25px;line-height:1.25}
.service-details{margin:0;padding:0;list-style:none;color:var(--fg-4a4f55,#4a4f55);font-size:15px}
.service-details li{padding:9px 0;border-top:1px solid var(--line-e4ded3,#e4ded3)}
.service-enquiry{margin-top:auto;min-height:44px;padding:12px 0;display:flex;gap:12px;justify-content:space-between;align-items:center;color:var(--bronze);font-size:15px;font-weight:600;text-decoration:underline;text-underline-offset:5px}
.home-page .steps-compact{grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}
.home-page .s77{font-size:24px}
.engagement-note{margin:32px 0 0;padding-top:24px;border-top:1px solid var(--line-cfc7b8,#cfc7b8);color:var(--fg-4a4f55,#4a4f55);font-size:15px}
.engagement-note strong{color:var(--ink);font-weight:600}
.about-intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:64px}
.about-title .s37{margin-bottom:20px}
.about-accent{color:var(--bronze)}
.about-copy{font-size:16px;color:var(--fg-4a4f55,#4a4f55)}
.about-copy p{margin:0 0 18px}.about-copy p:last-child{margin-bottom:0}
.about-copy .about-lead{font-size:21px;line-height:1.55;color:var(--ink)}




.home-page .s95{gap:64px}.home-page .s96{flex-basis:360px}.home-page .s97{font-size:clamp(36px,4vw,54px);line-height:1.16}
.contact-expectation{border-top:1px solid #35404b;padding-top:24px;margin-top:8px;max-width:400px}
.contact-expectation p{margin:0 0 10px;color:#c9a876;font-size:13px;font-weight:600}
.contact-expectation span{font-size:15px;color:#b9b3a8}
.home-page .s100{gap:18px}
.home-page .s104,.home-page .s106{font-size:14px;letter-spacing:0;color:#c6c9cb}
.optional-label{font-weight:400;color:#aeb6bd}
.home-page .s105,.home-page .s108,.home-page #field-service{border:1px solid #63717d;border-radius:3px;background:#18212b;color:#ede8df;padding:12px;min-height:48px;font:400 16px/1.5 Figtree,Arial,sans-serif;box-shadow:none}
.home-page .s108{min-height:130px}.home-page .s105::placeholder,.home-page .s108::placeholder{color:#aeb6bd}
.home-page .s105:focus-visible,.home-page .s108:focus-visible,.home-page #field-service:focus-visible{outline:2px solid #c9a876;outline-offset:3px;border-color:#c9a876}
.home-page #field-service{color-scheme:dark}
@supports (appearance:base-select){
  .home-page #field-service::picker(select),.home-page #field-service option{background:#18212b;color:#ede8df;border-color:#63717d}
  .home-page #field-service option:is(:hover,:focus,:checked){background:#c9a876;color:#0e1319}
}
#service-status{font-size:13px;color:#c9a876;margin:-4px 0 0}#service-status:empty{display:none}
.home-page .s112{letter-spacing:.02em}
.home-page .s115{padding-top:44px;padding-bottom:32px}
@media(max-width:1050px){
  .home-page .steps-compact{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-page .s11{gap:40px}.home-page .s12{flex-basis:480px}.home-page .architecture-card{flex-basis:320px}
  .home-page .service-grid>article{padding-inline:22px}.home-page .service-grid>article:first-child{padding-left:0}.home-page .service-grid>article:last-child{padding-right:0}
  .about-intro{gap:36px}
}
@media(max-width:700px){
  .home-page .primary-nav{gap:12px;padding:12px 22px}.header-actions{margin-left:auto}
  .home-page .primary-nav>.nav-links{order:2;width:100%;margin:0;gap:8px 18px}
  .home-page .primary-nav.menu-enhanced>.nav-links{flex-direction:column;align-items:stretch;gap:0;padding-top:8px;border-top:1px solid var(--line-d9d2c5,#d9d2c5)}
  .home-page .primary-nav.menu-enhanced .nav-links>a{padding:12px 8px}.home-page .primary-nav.menu-enhanced .nav-links>.s8{padding-left:16px;margin-top:8px}
  .home-page .s11,.home-page #services,.home-page .approach-inner,.home-page .about-inner,.home-page .s95{padding:52px 22px}
  .home-page .s11{gap:32px}.home-page .s12{flex-basis:100%;gap:22px}.home-page .architecture-card{flex-basis:100%;padding:28px 26px}
  .home-page .s14{font-size:clamp(36px,7.5vw,48px)}.home-page .s16{font-size:17px}
  .home-page .s13{letter-spacing:.11em}.home-page .s17{flex-direction:column;align-items:stretch}.home-page .s17 a{justify-content:center;text-align:center}
  .section-heading{margin-bottom:28px}.home-page .service-grid>article,.home-page .service-grid>article:first-child,.home-page .service-grid>article:last-child{padding:28px 0}
  .home-page .steps-compact{grid-template-columns:1fr;gap:24px}.home-page .steps-compact .s75{padding-top:24px}.home-page .steps-compact .s75+.s75{border-top:1px solid var(--line-cfc7b8,#cfc7b8)}
  .about-intro{grid-template-columns:1fr;gap:28px}.about-copy .about-lead{font-size:19px}
  .home-page .s95{gap:32px}.home-page .s96{flex-basis:100%}
  .home-page .s103{flex-direction:column;gap:18px}.home-page .s104{flex-basis:auto}.home-page .s112{align-self:stretch}
}
@media(forced-colors:active){
  .home-page .s105,.home-page .s108,.home-page #field-service,.home-page #field-service option{forced-color-adjust:auto;background:Canvas;color:CanvasText;border-color:ButtonText}
  .home-page #field-service option:is(:hover,:focus,:checked){background:Highlight;color:HighlightText}
}

/* Specific services share the three concise practice introductions. */
.service-catalogue{list-style:none;margin:4px 0 0;padding:0;border-top:1px solid var(--line-e4ded3,#e4ded3)}
.service-catalogue li{border-bottom:1px solid var(--line-e4ded3,#e4ded3)}
.service-catalogue a{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:48px;padding:14px 0;font-size:15px;font-weight:500;line-height:1.5}
.service-catalogue a>span:first-child{min-width:0}
.service-catalogue a>span:last-child{flex-shrink:0;color:var(--bronze)}
.service-catalogue a small{display:block;margin-top:4px;font-size:13px;font-weight:400;color:var(--fg-6b6458,#6b6458)}
.service-catalogue a:hover>span:first-child{text-decoration:underline;text-underline-offset:4px}

/* Deliverables and native disclosure controls keep the added detail concise. */
.stage-output{margin:8px 0 0;padding-top:16px;border-top:1px solid var(--line-cfc7b8,#cfc7b8);font-size:14px;line-height:1.6;color:var(--fg-3e434a,#3e434a)}
.stage-output>span{display:block;margin-bottom:5px;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--bronze)}
.home-page .faq-inner{padding:0 32px 80px}
.faq-inner .section-heading{padding-top:40px;border-top:1px solid var(--line-d9d2c5,#d9d2c5);max-width:none;margin-bottom:28px}
.faq-list{max-width:940px}
.faq-list details{border-top:1px solid var(--line-d9d2c5,#d9d2c5)}
.faq-list details:last-child{border-bottom:1px solid var(--line-d9d2c5,#d9d2c5)}
.faq-list summary{padding:18px 8px;min-height:56px;font-size:17px;font-weight:500;cursor:pointer;color:var(--ink)}
.faq-list summary::marker{color:var(--bronze)}
.faq-list summary:hover{color:var(--bronze)}
.faq-list details[open] summary{color:var(--bronze)}
.faq-list details p{max-width:800px;margin:0;padding:0 8px 22px 28px;color:var(--fg-4a4f55,#4a4f55);font-size:16px}
@media(max-width:700px){.home-page .faq-inner{padding:0 22px 52px}.faq-inner .section-heading{padding-top:32px}.faq-list summary{font-size:16px}.faq-list details p{padding-left:8px}}
