/* One viewport-fixed scene; all editorial surfaces scroll independently. */
html[data-theme] body{isolation:isolate;background:#d4dfd3}
.ambient-scene{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:#b8c9b7}
.ambient-scene img{width:100%;height:100%;object-fit:cover;object-position:center 58%;opacity:.86}
.ambient-scene::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 8% 25%,#f4d2a673,transparent 60%),radial-gradient(ellipse at 90% 70%,#5fae9b59,transparent 60%),linear-gradient(90deg,#e4dfc970,#a2bba72e)}
html[data-theme=dark] .ambient-scene::after{background:radial-gradient(ellipse at 8% 25%,#d49c5459,transparent 60%),linear-gradient(90deg,#193b326b,#1631265e)}
html[data-theme] .hero{background:none;isolation:auto;overflow:visible}
html[data-theme] .hero>.hero-image,html[data-theme] .hero>.hero-shade{display:none}
html[data-theme] .hero-content{background:linear-gradient(135deg,#fff9ebaf,#f3f7eb52);backdrop-filter:blur(22px) saturate(125%);-webkit-backdrop-filter:blur(22px) saturate(125%);box-shadow:0 30px 80px #163a322e,inset 0 1px 1px #fffffff0}
html[data-theme] main>section.glass-light:not(.hero),html[data-theme] main>section.glass-dark{width:calc(100% - 64px);max-width:1440px;margin:30px auto;padding:65px 52px;border-radius:28px;border:1px solid #ffffff9c;box-shadow:0 25px 70px #102e2921,inset 0 1px #ffffffaa;backdrop-filter:blur(18px) saturate(125%);-webkit-backdrop-filter:blur(18px) saturate(125%)}
html[data-theme] main>section.glass-light:not(.hero){background:linear-gradient(125deg,#fff5dfbf,#eaf5e8a1);--text:#172f29;--muted:#365145;--accent:#7b4a28;color:var(--text)}
html[data-theme] main>section.glass-dark{background:linear-gradient(125deg,#102e26d6,#143729b0);--text:#f8f4eb;--muted:#d5e2d4;--accent:#ecc39b;color:var(--text);border-color:#ffffff63;box-shadow:0 25px 70px #102e2940,inset 0 1px #ffffff55}
html[data-theme] .principles{background:linear-gradient(125deg,#fff5dfbf,#eaf5e8a1)!important}
html[data-theme] .sector-strip{width:calc(100% - 64px);max-width:1440px;margin:0 auto 30px;border:1px solid #ffffff85;border-radius:18px;background:#183c2bab;backdrop-filter:blur(16px);color:#f8f5ed}
html[data-theme] .intro>div{background:#ffffff08;border:0;box-shadow:none;backdrop-filter:none;padding:10px}
html[data-theme] .market-section .wrap,html[data-theme] .services-section .wrap{width:100%}
html[data-theme] .glass-light .service-card,html[data-theme] .glass-light .content-card,html[data-theme] .glass-light .post-grid>a,html[data-theme] .glass-light .problem-grid article{background:linear-gradient(125deg,#fffaf277,#ffffff26)}
html[data-theme] .glass-light .service-card:nth-child(even),html[data-theme] .glass-light .content-card:nth-child(even),html[data-theme] .glass-light .post-grid>a:nth-child(even),html[data-theme] .glass-light .problem-grid article:nth-child(even){background:linear-gradient(125deg,#163f33c2,#1c4d3da3)}
html[data-theme] .glass-dark .service-card,html[data-theme] .glass-dark .content-card,html[data-theme] .glass-dark .post-grid>a,html[data-theme] .glass-dark .problem-grid article{background:linear-gradient(125deg,#ffffff24,#ffffff08)}
html[data-theme] .glass-dark .service-card:nth-child(even),html[data-theme] .glass-dark .content-card:nth-child(even),html[data-theme] .glass-dark .post-grid>a:nth-child(even),html[data-theme] .glass-dark .problem-grid article:nth-child(even){background:linear-gradient(125deg,#fcf4e9de,#dfeddbc2)}
html[data-theme] .seo-breadcrumb{padding:14px 22px;background:#fff8eadb;border:1px solid #fff9;border-radius:14px;backdrop-filter:blur(16px)}
html[data-theme] .article{background:#fff9efeb;border:1px solid #fff;border-radius:24px;padding:42px;margin-block:30px;box-shadow:0 24px 60px #163a322e}
html[data-theme] footer.wrap{background:#102d24d9;border-top:1px solid #ffffff66;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
@media(max-width:760px){html[data-theme] main>section.glass-light:not(.hero),html[data-theme] main>section.glass-dark{width:calc(100% - 28px);padding:35px 23px;margin-block:18px;border-radius:22px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}html[data-theme] .sector-strip{width:calc(100% - 28px);margin-bottom:18px;padding:23px 12px;gap:12px;font-size:.8rem}html[data-theme] .intro>div{padding:0!important}.ambient-scene img{object-position:65% center}html[data-theme] .article{width:calc(100% - 28px);padding:27px 23px}html[data-theme] .principles{padding:28px 20px!important}.hero-bottom>span{display:none}}
@supports not (backdrop-filter:blur(1px)){html[data-theme] main>section.glass-light:not(.hero){background:#f3eee3f2}html[data-theme] main>section.glass-dark{background:#173a2ff5}html[data-theme] .hero-content{background:#faf2e5ee}}
html[data-theme] main>section.hero{background:transparent!important}
/* Clear smoke glass: the scene supplies the colour, never a green panel fill. */
html[data-theme] .ambient-scene::after{background:linear-gradient(110deg,#d7a78124,#00000012)}
html[data-theme] main>section.glass-dark{background:linear-gradient(125deg,#ffffff0d,#00000012);backdrop-filter:blur(8px) brightness(.52);-webkit-backdrop-filter:blur(8px) brightness(.52);--muted:#eeebe5;border-color:#ffffff70;box-shadow:0 24px 65px #0003,inset 0 1px #ffffff55}
html[data-theme] .glass-light .service-card:nth-child(even),html[data-theme] .glass-light .content-card:nth-child(even),html[data-theme] .glass-light .post-grid>a:nth-child(even),html[data-theme] .glass-light .problem-grid article:nth-child(even),html[data-theme] .glass-path>div:nth-child(2){background:linear-gradient(125deg,#17171766,#17171738);backdrop-filter:blur(10px) brightness(.65);-webkit-backdrop-filter:blur(10px) brightness(.65)}
html[data-theme] header,html[data-theme] .sector-strip,html[data-theme] footer.wrap{background:#15151538;backdrop-filter:blur(14px) brightness(.48);-webkit-backdrop-filter:blur(14px) brightness(.48)}
html[data-theme] .intro>div{background:transparent}
@supports not (backdrop-filter:blur(1px)){html[data-theme] main>section.glass-dark{background:#171717e8}}
/* Theme-aware glass surfaces. Low fill opacity exposes the fixed photograph. */
html[data-theme=light]{--frost-fill:linear-gradient(125deg,#fff8e96b,#fff8e940);--frost-filter:blur(7px) brightness(1.28);--frost-ink:#111b17;--frost-muted:#263b30;--frost-accent:#663b1e;--smoke-filter:blur(6px) brightness(.58)}
html[data-theme=dark]{--frost-fill:linear-gradient(125deg,#ffffff0a,#00000026);--frost-filter:blur(7px) brightness(.40);--frost-ink:#fffaf2;--frost-muted:#e5e0d7;--frost-accent:#efc69d;--smoke-filter:blur(6px) brightness(.36)}
html[data-theme] main>section.glass-light:not(.hero),html[data-theme] .principles,html[data-theme] .hero-content,html[data-theme] .glass-path>div:not(:nth-child(2)),html[data-theme] .article{background:var(--frost-fill)!important;backdrop-filter:var(--frost-filter)!important;-webkit-backdrop-filter:var(--frost-filter)!important;--text:var(--frost-ink);--muted:var(--frost-muted);--accent:var(--frost-accent);color:var(--frost-ink)}
html[data-theme] main>section.glass-dark{background:linear-gradient(125deg,#ffffff05,#0000000d);backdrop-filter:var(--smoke-filter);-webkit-backdrop-filter:var(--smoke-filter)}
html[data-theme] .hero h1,html[data-theme] .hero-content>p:not(.micro),html[data-theme] .hero .micro,html[data-theme] .glass-path>div:not(:nth-child(2)) p{color:var(--frost-ink)}
html[data-theme] .hero h1 em,html[data-theme] .glass-path>div:not(:nth-child(2)) small{color:var(--frost-accent)}
html[data-theme=dark] .hero .eyebrow{background:#0003;color:#efc69d}
html[data-theme] :is(.glass-light,.glass-dark) :is(.service-card,.content-card,.post-grid>a,.problem-grid article,.tracking,.faq details){background:linear-gradient(125deg,#ffffff18,#ffffff05)!important;backdrop-filter:blur(2px)!important;-webkit-backdrop-filter:blur(2px)!important;--text:inherit;--muted:inherit;--accent:inherit;color:inherit}
html[data-theme=light] :is(.glass-light,.glass-dark) :is(.service-card,.content-card,.post-grid>a,.problem-grid article):nth-child(even){background:#11111170!important;--text:#fffaf2;--muted:#ece6dd;--accent:#efc69d;color:#fffaf2}
/* Dark-theme cards inherit readable section colors, including alternating cards. */
html[data-theme=dark] :is(.glass-light,.glass-dark) :is(.service-card,.content-card,.post-grid>a,.problem-grid article):nth-child(even){--text:inherit;--muted:inherit;--accent:inherit;color:inherit}
html[data-theme=dark] .ambient-scene::after{background:#00000040}
html[data-theme=light] .ambient-scene::after{background:linear-gradient(110deg,#d7a78118,transparent)}
html[data-theme] .theme-toggle{position:relative;z-index:2;pointer-events:auto}
@supports not (backdrop-filter:blur(1px)){html[data-theme=light]{--frost-fill:#f5eee3e8}html[data-theme=dark]{--frost-fill:#161616eb}html[data-theme] main>section.glass-dark{background:#171717eb}}
/* The homepage positioning label uses the brand display face at a readable size. */
html[data-theme] .hero .brand-eyebrow{display:inline-flex;flex-wrap:wrap;align-items:center;gap:0 .45em;max-width:100%;font-family:var(--display);font-size:clamp(.75rem,.9vw,.875rem);font-weight:600;line-height:1.65;letter-spacing:.105em;text-transform:uppercase;padding:12px 20px;margin-bottom:28px;border-radius:16px;border:1px solid #a87d504d;background:linear-gradient(125deg,#fff9ed99,#fff9ed47);color:#593c22;box-shadow:inset 0 1px #ffffff80;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);text-wrap:balance}
html[data-theme=dark] .hero .brand-eyebrow{color:#eed0aa;border-color:#e4bf8866;background:linear-gradient(125deg,#ffffff0d,#00000026);box-shadow:inset 0 1px #ffffff26}
@media(max-width:760px){html[data-theme] .hero .brand-eyebrow{display:block;font-size:.6875rem;letter-spacing:.075em;line-height:1.75;padding:11px 13px;border-radius:13px}html[data-theme] .hero .brand-eyebrow>span{display:block}}
html[data-theme] .hero .event-headline{font-size:clamp(2rem,3.15vw,3.1rem);line-height:1.17;letter-spacing:-.045em;text-wrap:initial}
@media(max-width:760px){html[data-theme] .hero .event-headline{font-size:clamp(1.8rem,7.3vw,2.65rem)!important;line-height:1.2;text-wrap:balance}}
@media(max-width:760px){html[data-theme] main>section.hero{min-height:1160px}.hero:has(.event-headline) .hero-content{margin-bottom:430px}}
html[data-theme] .hero .event-headline .verified-phrase{font-style:italic}
