
:root{
  --bg:#f7f7f5; --surface:#ffffff; --ink:#14141c; --muted:#63636c; --line:#e4e3df;
  --pink:#e31c6b; --pink-deep:#c81257; --orange:#f7941d; --navy:#0e1b2e;
  --grad:linear-gradient(135deg,var(--pink) 0%,var(--orange) 100%);
  --header-bg:rgba(247,247,245,0.92); --btn-fill:var(--ink); --btn-text:#fff;
}
html[data-theme="dark"]{
  --bg:#101014; --surface:#1a1a20; --ink:#f2f2f5; --muted:#9a9aa4; --line:#2c2c34;
  --header-bg:rgba(16,16,20,0.86); --btn-fill:#f2f2f5; --btn-text:#14141c;
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%;}
body{background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased;min-height:100vh;overscroll-behavior-y:none;}
@supports (padding:max(0px)){body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);}}
h1,h2,h3{font-family:'DM Sans',sans-serif;font-weight:600;letter-spacing:-0.01em;}
.mono{font-family:'IBM Plex Mono',monospace;letter-spacing:0.02em;}
a{color:inherit;text-decoration:none;cursor:pointer;}
img{max-width:100%;display:block;}
.wrap{max-width:1200px;margin:0 auto;padding:0 32px;}
section{padding:96px 0;}
@media (max-width:820px){section{padding:64px 0;}}
.mark{width:56px;height:56px;display:flex;align-items:center;justify-content:center;flex:none;}
.mark img{width:100%;height:100%;object-fit:contain;}
header{position:sticky;top:0;z-index:200;background:var(--header-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top);}
.nav{display:flex;align-items:center;justify-content:space-between;padding:26px 32px;max-width:1200px;margin:0 auto;gap:20px;}
.brand{display:flex;align-items:center;gap:16px;}
.brand-text{display:flex;flex-direction:column;justify-content:center;line-height:1.15;}
.brand-name-logo-big{height:34px;width:auto;display:block;object-fit:contain;}
@media (max-width:520px){.brand-name-logo-big{height:26px;}}
nav.links{display:flex;gap:6px;align-items:center;}
nav.links>.navitem{position:relative;}
nav.links>.navitem>a,nav.links>.navitem>span.toplink{display:inline-flex;align-items:center;gap:5px;font-size:14px;color:var(--muted);font-weight:500;padding:10px 12px;border-radius:8px;}
nav.links>.navitem>a:hover,nav.links>.navitem>span.toplink:hover{color:var(--ink);background:rgba(0,0,0,0.04);}
.caret{font-size:9px;opacity:.6;transform:translateY(1px);}
.dropdown{position:absolute;top:100%;left:0;background:var(--surface);border:1px solid var(--line);border-radius:0 14px 14px 14px;box-shadow:0 24px 60px -20px rgba(0,0,0,0.25);padding:26px 18px 18px;display:none;z-index:220;}
.navitem:hover .dropdown,.navitem:focus-within .dropdown{display:flex;}
.dropdown.mega{gap:28px;width:min(760px,86vw);}
.dd-col{min-width:180px;}
.dd-col .glabel{font-family:'IBM Plex Mono';font-size:10.5px;letter-spacing:0.06em;text-transform:uppercase;color:var(--pink-deep);margin-bottom:10px;display:block;}
.dd-col a{display:block;font-size:13.5px;color:var(--ink);padding:6px 8px;border-radius:6px;margin:0 -8px;}
.dd-col a:hover{background:rgba(207,162,58,0.07);color:var(--pink-deep);}
.dd-col .sub{padding-left:14px;font-size:12.5px;color:var(--muted);}
.nav-cta{padding:9px 20px;border-radius:999px;background:var(--btn-fill);color:var(--btn-text);font-size:13.5px;font-weight:600;white-space:nowrap;flex:none;}
.nav-cta:hover{background:var(--pink-deep);}
.theme-toggle{display:flex;align-items:center;gap:6px;width:52px;height:28px;border-radius:999px;border:1px solid var(--line);background:var(--surface);flex:none;cursor:pointer;padding:3px;position:relative;touch-action:manipulation;}
.theme-toggle .knob{width:20px;height:20px;border-radius:50%;background:var(--ink);color:var(--bg);display:flex;align-items:center;justify-content:center;font-size:11px;transform:translateX(0);}
html[data-theme="dark"] .theme-toggle .knob{transform:translateX(24px);}
.burger-toggle{display:none;}
html:has(.burger-toggle:checked){overflow:hidden;}
.burger-label{display:none;width:44px;height:44px;border-radius:8px;border:1px solid var(--line);background:var(--surface);align-items:center;justify-content:center;flex:none;cursor:pointer;touch-action:manipulation;}
@media (max-width:980px){nav.links{display:none;} .burger-label{display:flex;}}
@media (max-width:700px){.nav-cta{display:none;}}
@media (max-width:980px){.nav{flex-wrap:nowrap;} .brand{min-width:0;overflow:hidden;} .theme-toggle{flex-shrink:0;}}
.mobile-panel .m-cta{display:inline-block;margin-top:20px;padding:12px 22px;border-radius:999px;background:var(--btn-fill);color:var(--btn-text);font-size:14px;font-weight:600;}
.mobile-panel{display:none;position:fixed;inset:0;z-index:300;background:var(--surface);overflow-y:auto;padding:24px;padding-top:max(24px,env(safe-area-inset-top));padding-bottom:max(24px,env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;}
.burger-toggle:checked ~ .mobile-panel{display:block;}
.mobile-close{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:var(--surface);display:flex;align-items:center;justify-content:center;margin-left:auto;margin-bottom:16px;cursor:pointer;touch-action:manipulation;}
.m-item{border-bottom:1px solid var(--line);padding:12px 0;}
.m-item>a,.m-item>summary{display:block;font-weight:600;font-size:15px;padding:4px 0;cursor:pointer;}
.m-sub{padding-left:12px;margin-top:6px;display:flex;flex-direction:column;gap:8px;}
.m-sub a{font-size:13.5px;color:var(--muted);}
.hero{position:relative;padding:80px 32px 0;overflow:hidden;border-bottom:1px solid var(--line);}
.hero-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1.1fr 0.9fr;gap:40px;align-items:center;padding-bottom:56px;}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:'IBM Plex Mono';font-size:12px;color:var(--pink-deep);background:rgba(207,162,58,0.08);border:1px solid rgba(207,162,58,0.18);padding:6px 12px;border-radius:999px;margin-bottom:22px;}
.eyebrow::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--grad);}
.hero h1{font-size:clamp(30px,4vw,48px);line-height:1.12;margin-bottom:18px;}
.hero h1 em{font-style:normal;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;}
.hero p.lead{font-size:16.5px;color:var(--muted);max-width:540px;margin-bottom:28px;}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;}
.btn,.nav-cta,summary,.m-item>a,.m-item>summary,.footer-social a,.tag-pill{touch-action:manipulation;}
.btn{padding:13px 26px;border-radius:8px;font-weight:600;font-size:14.5px;display:inline-flex;align-items:center;gap:8px;cursor:pointer;border:none;font-family:inherit;min-height:44px;}
.btn-primary{background:var(--btn-fill);color:var(--btn-text);}
.btn-primary:hover{background:var(--pink-deep);}
.btn-ghost{border:1px solid var(--line);color:var(--ink);background:var(--surface);}
.btn-ghost:hover{border-color:var(--pink);}
.hero-visual{position:relative;height:340px;border-radius:20px;background:var(--navy);overflow:hidden;display:flex;align-items:center;justify-content:center;padding:0;}
.hero-visual img{width:100%;height:100%;object-fit:cover;filter:saturate(1.05) contrast(1.02);}
.hv-badge{position:absolute;right:18px;bottom:18px;background:rgba(10,14,26,0.82);backdrop-filter:blur(6px);color:#fff;font-family:'IBM Plex Mono';font-size:11px;letter-spacing:0.04em;padding:8px 12px;border-radius:8px;border:1px solid rgba(255,255,255,0.15);}
@media (max-width:900px){.hero-inner{grid-template-columns:1fr;} .hero-visual{height:220px;}}
.stat-strip{border-top:1px solid var(--line);padding:26px 0;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.stat-strip .num{font-family:'DM Sans';font-size:27px;font-weight:700;}
.stat-strip .num span{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;}
.stat-strip .label{font-family:'IBM Plex Mono';font-size:10.5px;color:var(--muted);letter-spacing:0.04em;margin-top:4px;}
@media (max-width:700px){.stat-strip{grid-template-columns:repeat(2,1fr);}}
.section-tag{font-family:'IBM Plex Mono';font-size:12px;color:var(--pink-deep);letter-spacing:0.08em;text-transform:uppercase;}
.section-head{max-width:700px;margin-bottom:40px;}
.section-head h2{font-size:clamp(24px,3vw,34px);margin:10px 0 12px;}
.section-head p{color:var(--muted);font-size:15px;}
.cap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.cap-card{background:transparent;overflow:hidden;position:relative;padding-top:3px;}
.cap-card::before{content:'';position:absolute;top:-1px;left:0;width:44px;height:3px;border-radius:2px;background:var(--grad);z-index:2;}
.card-img{width:100%;height:140px;overflow:hidden;border-radius:10px;margin-top:1px;}
.card-img img{width:100%;height:100%;object-fit:cover;display:block;}
.cap-card .card-body{padding:18px 2px 0;}
.cap-card .cat{font-family:'IBM Plex Mono';font-size:10.5px;color:var(--muted);}
.cap-card h3{font-size:17.5px;margin:12px 0 8px;}
.cap-card p{font-size:13.6px;color:var(--muted);}
.cap-card details{margin-top:14px;}
.cap-card summary{font-family:'IBM Plex Mono';font-size:11.5px;color:var(--pink-deep);cursor:pointer;}
.cap-card details p{margin-top:10px;}
@media (max-width:1000px){.cap-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:640px){.cap-grid{grid-template-columns:1fr;}}
.cap-group{margin-bottom:48px;scroll-margin-top:100px;}
.cap-card,.market-card{scroll-margin-top:100px;}
.cap-group:last-child{margin-bottom:0;}
.cap-group-title{font-size:20px;margin-bottom:18px;padding-bottom:12px;border-bottom:1px solid var(--line);}
.cap-group-img{width:100%;height:170px;border-radius:14px;overflow:hidden;margin-bottom:18px;}
.cap-group-img img{width:100%;height:100%;object-fit:cover;display:block;}
.tag-pill{font-family:'IBM Plex Mono';font-size:12px;color:var(--ink);border:1px solid var(--line);padding:7px 14px;border-radius:999px;background:var(--surface);display:inline-block;}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;}
.about-grid p{margin-bottom:14px;color:var(--muted);}
@media (max-width:820px){.about-grid{grid-template-columns:1fr;}}
.pillar-list{list-style:none;margin-top:8px;}
.pillar-list li{display:flex;gap:14px;padding:16px 0;border-top:1px solid var(--line);}
.pillar-list li:last-child{border-bottom:1px solid var(--line);}
.pillar-list b{font-family:'IBM Plex Mono';color:var(--pink-deep);font-size:13px;min-width:26px;}
.market-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.problem-list{display:flex;flex-direction:column;}
.problem-item{display:flex;gap:22px;align-items:flex-start;padding:24px 0;border-top:1px solid var(--line);}
.problem-item:last-child{border-bottom:1px solid var(--line);}
.problem-item .pnum{font-family:'DM Sans';font-size:15px;font-weight:700;color:#fff;background:var(--grad);min-width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex:none;}
.problem-item h3{font-size:16.5px;font-weight:600;line-height:1.45;padding-top:6px;}
.offer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;}
.offer-card{position:relative;padding-top:24px;}
.offer-card::before{content:'';position:absolute;top:0;left:0;width:44px;height:3px;border-radius:2px;background:var(--grad);}
.offer-card .idx{font-family:'IBM Plex Mono';font-size:11px;color:var(--pink-deep);letter-spacing:0.05em;margin-bottom:12px;}
.offer-card h3{font-size:19px;margin-bottom:10px;}
.offer-card p{font-size:13.6px;color:var(--muted);}
.offer-card .arrow{margin-top:16px;font-family:'IBM Plex Mono';font-size:11.5px;color:var(--pink-deep);display:inline-flex;align-items:center;gap:6px;}
@media (max-width:900px){.offer-grid{grid-template-columns:1fr 1fr;} .market-grid{grid-template-columns:repeat(3,1fr);}}
@media (max-width:600px){.offer-grid{grid-template-columns:1fr;}}
@media (max-width:520px){.market-grid{grid-template-columns:repeat(2,1fr);}}
.market-card{position:relative;padding-top:3px;overflow:hidden;}
.market-card:not(.has-photo){padding-top:24px;}
.market-card:not(.has-photo)::before{content:'';position:absolute;top:0;left:0;width:44px;height:3px;border-radius:2px;background:var(--grad);}
.market-card.has-photo .card-img{height:90px;}
.market-card .card-body{padding:16px 2px 0;}
.market-card .idx{font-family:'IBM Plex Mono';font-size:11px;color:var(--pink-deep);margin-bottom:8px;}
.market-card h3{font-size:14.5px;}
.quality{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start;}
.badge{display:inline-block;font-family:'IBM Plex Mono';font-size:11.5px;background:rgba(207,162,58,0.08);border:1px solid rgba(207,162,58,0.18);color:var(--pink-deep);padding:6px 12px;border-radius:999px;margin-bottom:16px;}
@media (max-width:820px){.quality{grid-template-columns:1fr;}}
.heritage-intro{max-width:780px;color:var(--muted);margin-bottom:44px;font-size:15px;}
.timeline{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-bottom:40px;}
.tl-card{position:relative;padding-top:24px;}
.tl-card::before{content:'';position:absolute;top:0;left:0;width:44px;height:3px;border-radius:2px;background:var(--grad);}
.tl-card .tiny{font-family:'IBM Plex Mono';font-size:11px;color:var(--pink-deep);letter-spacing:0.05em;margin-bottom:10px;}
.tl-card h3{font-size:18.5px;margin-bottom:10px;color:var(--ink);}
.tl-card p{font-size:13.8px;color:var(--muted);}
.tl-card a.ext{display:inline-block;margin-top:14px;font-family:'IBM Plex Mono';font-size:12px;color:var(--pink-deep);border-bottom:1px solid rgba(207,162,58,0.4);}
.heritage-note{display:flex;gap:16px;align-items:flex-start;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:22px 26px;}
.heritage-note .dot{width:8px;height:8px;border-radius:50%;background:var(--grad);margin-top:8px;flex:none;}
.heritage-note p{font-size:14px;color:var(--muted);}
@media (max-width:820px){.timeline{grid-template-columns:1fr;}}
.lab-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.lab-card{position:relative;padding-top:3px;}
.lab-card::before{content:'';position:absolute;top:-1px;left:0;width:44px;height:3px;border-radius:2px;background:var(--grad);}
.lab-card .card-body{padding:18px 2px 0;}
.lab-card .tag{font-family:'IBM Plex Mono';font-size:10.5px;color:var(--pink-deep);}
.lab-card h3{font-size:16px;margin:10px 0 8px;}
.lab-card p{font-size:13.2px;color:var(--muted);}
@media (max-width:980px){.lab-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:560px){.lab-grid{grid-template-columns:1fr;}}
.prod-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
.prod-card{position:relative;padding-top:3px;}
.prod-card::before{content:'';position:absolute;top:-1px;left:0;width:44px;height:3px;border-radius:2px;background:var(--grad);}
.prod-card .card-body{padding:18px 2px 0;display:flex;gap:18px;}
.prod-card .num{font-family:'DM Sans';font-size:26px;font-weight:700;color:var(--line);flex:none;}
.prod-card h3{font-size:17px;margin-bottom:8px;}
.prod-card p{font-size:13.6px;color:var(--muted);}
@media (max-width:820px){.prod-grid{grid-template-columns:1fr;}}
.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.contact{background:var(--surface);border-top:1px solid var(--line);}
.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:56px;}
.info-row{display:flex;gap:16px;padding:14px 0;border-top:1px solid var(--line);}
.info-row .k{font-family:'IBM Plex Mono';font-size:11px;color:var(--muted);min-width:70px;padding-top:2px;}
.info-row .v{font-size:14.5px;}
@media (max-width:820px){.contact-inner{grid-template-columns:1fr;}}
.legal h2{font-size:26px;margin-bottom:18px;}
.legal h3{font-size:17px;margin:26px 0 8px;}
.legal p,.legal li{color:var(--muted);font-size:14.6px;margin-bottom:10px;}
.legal ul{padding-left:20px;margin-bottom:10px;}
.legal .updated{font-family:'IBM Plex Mono';font-size:11.5px;color:var(--pink-deep);margin-bottom:24px;display:inline-block;}
.sitemap-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:30px;}
.sitemap-grid .glabel{font-family:'IBM Plex Mono';font-size:11.5px;letter-spacing:0.05em;text-transform:uppercase;color:var(--pink-deep);margin-bottom:12px;display:block;}
.sitemap-grid a{display:block;font-size:14px;color:var(--ink);padding:5px 0;}
.sitemap-grid .sm-sub{font-family:'IBM Plex Mono';font-size:10px;letter-spacing:0.05em;text-transform:uppercase;color:var(--muted);margin:14px 0 4px;}
.sitemap-grid a:hover{color:var(--pink-deep);}
@media (max-width:560px){.sitemap-grid{grid-template-columns:1fr;}}
footer{background:var(--bg);color:var(--ink);padding:56px 0 0;padding-bottom:env(safe-area-inset-bottom);}
.footer-top{display:grid;grid-template-columns:1.3fr 0.9fr 0.9fr 0.9fr 0.9fr;gap:36px;padding-bottom:40px;border-bottom:1px solid var(--line);}
.fbrand{display:flex;align-items:center;gap:12px;font-weight:600;color:var(--ink);font-family:'DM Sans';margin-bottom:14px;}
.footer-top p.desc{font-size:13.4px;color:var(--muted);max-width:280px;margin-bottom:16px;}
.footer-social{display:flex;gap:10px;}
.footer-social a{width:32px;height:32px;border-radius:50%;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--ink);}
.footer-social a:hover{background:var(--surface);border-color:var(--pink-deep);}
.footer-social a svg{width:15px;height:15px;fill:currentColor;}
.footer-col .glabel{font-family:'IBM Plex Mono';font-size:11px;letter-spacing:0.06em;text-transform:uppercase;color:var(--muted);margin-bottom:14px;display:block;white-space:normal;overflow-wrap:break-word;}
.footer-col a{display:block;font-size:13.6px;color:var(--ink);padding:5px 0;}
.footer-col a:hover{color:var(--pink-deep);}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:22px 0;}
.fine{font-family:'IBM Plex Mono';font-size:11.5px;color:var(--muted);}
.legal-links{display:flex;gap:18px;flex-wrap:wrap;}
.legal-links a{font-family:'IBM Plex Mono';font-size:11.5px;color:var(--ink);}
.legal-links a:hover{color:var(--pink-deep);}
@media (max-width:1100px){.footer-top{grid-template-columns:1fr 1fr 1fr;}}
@media (max-width:980px){.footer-top{grid-template-columns:1fr 1fr;}}
@media (max-width:560px){.footer-top{grid-template-columns:1fr;}}
.breadcrumb{font-family:'IBM Plex Mono';font-size:11.5px;color:var(--muted);padding:20px 0 0;}
.breadcrumb a:hover{color:var(--pink-deep);}
.section-photo{position:relative;width:100%;height:220px;border-radius:16px;overflow:hidden;margin-bottom:28px;border:1px solid var(--line);}
.section-photo img{width:100%;height:100%;object-fit:cover;}
.section-photo .cap{position:absolute;left:14px;bottom:12px;color:#fff;font-family:'IBM Plex Mono';font-size:11px;background:rgba(10,14,26,0.75);padding:6px 10px;border-radius:6px;}
@media (max-width:820px){.section-photo{height:150px;}}
@media (max-width:420px){.wrap{padding:0 20px;} .nav{padding:20px;}}
@media (max-width:600px){input,textarea{font-size:16px;}}
a.btn-primary,a.nav-cta{color:var(--btn-text);}
main>section,footer,.hero{position:relative;}
main>section::before,footer::before,.hero::before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:0.03;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='320' height='320' viewBox='0 0 320 320'><g fill='none' stroke='%23CFA23A' stroke-width='2'><path d='M10 30 H100 V90 H200 V40 H300'/><path d='M20 150 H90 V260 H180'/><path d='M250 120 V200 H310'/><path d='M40 200 V280 H140 V310'/><path d='M230 20 V70 H280 V150'/><rect x='120' y='118' width='42' height='26' rx='2'/><rect x='58' y='228' width='32' height='32' rx='2'/><rect x='262' y='196' width='26' height='26' rx='2'/></g><g fill='%23CFA23A' stroke='none'><circle cx='10' cy='30' r='4'/><circle cx='100' cy='30' r='4'/><circle cx='200' cy='90' r='4'/><circle cx='300' cy='40' r='4'/><circle cx='20' cy='150' r='4'/><circle cx='90' cy='150' r='4'/><circle cx='180' cy='260' r='4'/><circle cx='250' cy='120' r='4'/><circle cx='310' cy='200' r='4'/><circle cx='40' cy='200' r='4'/><circle cx='140' cy='280' r='4'/><circle cx='230' cy='20' r='4'/><circle cx='280' cy='70' r='4'/></g></svg>");
  background-repeat:repeat;background-size:320px 320px;z-index:0;
}
html[data-theme="dark"] main>section::before,html[data-theme="dark"] footer::before,html[data-theme="dark"] .hero::before{
  opacity:0.05;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='320' height='320' viewBox='0 0 320 320'><g fill='none' stroke='%23CFA23A' stroke-width='2'><path d='M10 30 H100 V90 H200 V40 H300'/><path d='M20 150 H90 V260 H180'/><path d='M250 120 V200 H310'/><path d='M40 200 V280 H140 V310'/><path d='M230 20 V70 H280 V150'/><rect x='120' y='118' width='42' height='26' rx='2'/><rect x='58' y='228' width='32' height='32' rx='2'/><rect x='262' y='196' width='26' height='26' rx='2'/></g><g fill='%23CFA23A' stroke='none'><circle cx='10' cy='30' r='4'/><circle cx='100' cy='30' r='4'/><circle cx='200' cy='90' r='4'/><circle cx='300' cy='40' r='4'/><circle cx='20' cy='150' r='4'/><circle cx='90' cy='150' r='4'/><circle cx='180' cy='260' r='4'/><circle cx='250' cy='120' r='4'/><circle cx='310' cy='200' r='4'/><circle cx='40' cy='200' r='4'/><circle cx='140' cy='280' r='4'/><circle cx='230' cy='20' r='4'/><circle cx='280' cy='70' r='4'/></g></svg>");
}
.hero::before{opacity:0.045;}
html[data-theme="dark"] .hero::before{opacity:0.07;}
main>section>.wrap,.hero-inner,.stat-strip{position:relative;z-index:1;}

.learnmore-btn{margin-top:14px;font-family:'IBM Plex Mono';font-size:11.5px;color:var(--pink-deep);background:none;border:none;padding:0;cursor:pointer;font-weight:600;touch-action:manipulation;display:inline-block;}
.learnmore-btn:hover{text-decoration:underline;}
.card-modal{position:fixed;inset:0;z-index:500;display:none;align-items:center;justify-content:center;padding:24px;}
.card-modal.open{display:flex;}
.card-modal-backdrop{position:absolute;inset:0;background:rgba(10,14,26,0.6);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);}
.card-modal-panel{position:relative;background:var(--surface);border-radius:16px;max-width:720px;width:100%;max-height:88vh;overflow-y:auto;-webkit-overflow-scrolling:touch;box-shadow:0 40px 100px -20px rgba(0,0,0,0.4);}
.card-modal-close{position:absolute;top:14px;right:14px;width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:var(--surface);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:2;touch-action:manipulation;color:var(--ink);}
.card-modal-img{width:100%;height:240px;overflow:hidden;border-radius:16px 16px 0 0;background:var(--navy);}
.card-modal-img img{width:100%;height:100%;object-fit:cover;display:block;}
.card-modal-body{padding:28px 28px 32px;}
.cmb-cat{font-family:'IBM Plex Mono';font-size:11px;color:var(--pink-deep);text-transform:uppercase;letter-spacing:0.05em;margin-bottom:8px;}
.cmb-title{font-size:22px;margin-bottom:14px;}
.cmb-text p{font-size:14.5px;color:var(--muted);margin-bottom:12px;}
.cmb-text p:last-child{margin-bottom:0;}
@media (max-width:600px){.card-modal-img{height:160px;}.card-modal-body{padding:22px 20px 26px;}}

::view-transition-old(root),::view-transition-new(root){animation-duration:220ms;animation-timing-function:ease-out;}
@media (max-width:820px){
  @keyframes app-fade-in{from{opacity:0;}to{opacity:1;}}
  body{animation:app-fade-in .22s ease-out both;}
}

/* Accord Prime theme */
:root{--bg:#F8F5EE;--surface:#fff;--ink:#1C1C1C;--muted:#5E5A52;--line:#E4E2DD;--pink:#CFA23A;--pink-deep:#84601A;--orange:#E4C060;--navy:#0A0E1A;--grad:#CFA23A;--btn-fill:#CFA23A;--btn-text:#1C1C1C;--gold:#CFA23A;--gold-hi:#E4C060;}
html[data-theme="dark"]{--bg:#0A0E1A;--surface:#121829;--ink:#EBE3D0;--muted:#A8A08E;--line:#262C3C;--pink-deep:#E4C060;--btn-fill:#CFA23A;--btn-text:#1C1C1C;}
header{background:rgba(248,245,238,0.92);}
footer{background:var(--surface);border-top:1px solid var(--line);}
.hero{background:var(--bg);}
html[data-theme="dark"] header{background:rgba(10,14,26,0.92);}html[data-theme="dark"] footer,html[data-theme="dark"] .hero{background:#0A0E1A;}
.nav{padding:12px 32px;}
.brand .logo-light,.brand .logo-dark,.fbrand .logo-light,.fbrand .logo-dark{align-items:center;}
.logo-light{display:flex;} .logo-dark{display:none;}
html[data-theme="dark"] .logo-light{display:none;}html[data-theme="dark"] .logo-dark{display:flex;}
.brand-logo{height:72px;width:auto;display:block;}
.fbrand .brand-logo{height:64px;}
@media (max-width:520px){.brand-logo{height:56px;}}
h1,h2,h3{font-weight:600;letter-spacing:-0.015em;}
nav.links>.navitem>a:hover{background:rgba(28,28,28,0.05);}
html[data-theme="dark"] nav.links>.navitem>a:hover{background:rgba(235,227,208,0.06);}
.hero h1 em,.stat-strip .num span{background:none;-webkit-background-clip:border-box;background-clip:border-box;color:var(--pink-deep);}
.eyebrow{background:none;border:none;padding:0;border-radius:0;color:var(--pink-deep);font-family:'DM Sans',sans-serif;font-weight:600;font-size:12px;letter-spacing:0.24em;text-transform:uppercase;gap:12px;}
.eyebrow::before{content:'';width:28px;height:2px;border-radius:0;background:var(--gold);}
.section-tag{font-family:'DM Sans',sans-serif;font-weight:600;letter-spacing:0.24em;display:flex;align-items:center;gap:12px;}
.section-tag::before{content:'';width:28px;height:2px;background:var(--gold);flex:none;}
.btn,.nav-cta,.mobile-panel .m-cta{border-radius:4px;}
.btn-primary,.nav-cta{background:var(--gold);color:#1C1C1C;}
.btn-primary:hover,.nav-cta:hover{background:var(--gold-hi);color:#1C1C1C;}
.btn:active,.nav-cta:active{transform:translateY(1px);}
.btn-ghost:hover{border-color:var(--gold);}
.problem-item .pnum{color:#1C1C1C;}
.heritage-note .dot{background:transparent;border:2px solid var(--gold);width:10px;height:10px;}
.hero-visual{border-radius:10px;border:1px solid var(--line);}
.hv-badge,.section-photo .cap{background:rgba(10,14,26,0.82);}
main>section::before,footer::before,.hero::before{opacity:0.15;}
html[data-theme="dark"] main>section::before,html[data-theme="dark"] footer::before,html[data-theme="dark"] .hero::before{opacity:0.2;}
.table-wrap{overflow-x:auto;border-top:1px solid var(--line);margin-bottom:40px;}
.spec-table{width:100%;border-collapse:collapse;font-size:14px;min-width:640px;}
.spec-table th{text-align:left;font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:500;letter-spacing:0.06em;text-transform:uppercase;color:var(--muted);padding:12px;border-bottom:1px solid var(--line);}
.spec-table td{padding:14px 12px;border-bottom:1px solid var(--line);vertical-align:top;color:var(--muted);}
.spec-table td:first-child{color:var(--ink);font-weight:600;}
.spec-table td.mono{font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--ink);white-space:nowrap;}
.spec-table tr:hover td{background:rgba(207,162,58,0.06);}
.group-title{font-size:18px;margin:0 0 14px;}

/* Header: stacked centred */
.nav{flex-wrap:wrap;justify-content:center;padding:20px 32px 0;row-gap:0;position:relative;}
.nav .brand{flex-basis:100%;display:flex;justify-content:center;padding-bottom:16px;border-bottom:1px solid var(--line);}
.brand-full{display:flex;flex-direction:column;align-items:center;gap:12px;}
.brand-full .logo-stacked{height:170px;width:auto;display:block;}
.brand-compact,.brand-mobile{display:none;}
.brand-compact .logo-symbol{height:70px;width:auto;display:block;}
.brand-mobile .logo-horiz{height:52px;width:auto;display:block;}
.brand-tag{display:flex;align-items:center;gap:12px;font-family:'DM Sans',sans-serif;font-weight:600;font-size:12px;letter-spacing:0.24em;text-transform:uppercase;color:var(--pink-deep);}
.brand-tag-rule{width:28px;height:2px;background:var(--gold);}
nav.links{justify-content:center;padding:8px 0;}
nav.links .navitem-cta{margin-left:10px;display:flex;align-items:center;}
nav.links>.navitem>a.nav-cta{background:var(--gold);color:#1C1C1C;padding:9px 20px;border-radius:4px;font-size:13.5px;font-weight:600;}
nav.links>.navitem>a.nav-cta:hover{background:var(--gold-hi);color:#1C1C1C;}
.nav>.theme-toggle{margin-left:14px;align-self:center;}
header.is-compact .brand-full{display:none;}
header.is-compact .brand-compact{display:flex;}
header.is-compact .nav{padding:8px 32px 0;}
header.is-compact .nav .brand{padding-bottom:8px;}
.fbrand .logo-stacked{height:104px;width:auto;display:block;}
@media (max-width:980px){
 .nav,header.is-compact .nav{flex-wrap:nowrap;justify-content:space-between;padding:12px 20px;}
 .nav .brand,header.is-compact .nav .brand{flex-basis:auto;border:none;padding:0;}
 .brand-full,header.is-compact .brand-compact{display:none;}
 .brand-mobile{display:flex;}
 .nav>.theme-toggle{margin-left:auto;}
}
@media (max-width:420px){.brand-mobile .logo-horiz{height:42px;}}

/* traces v2 */
main>section::before,footer::before,.hero::before{opacity:.24;}
html[data-theme="dark"] main>section::before,html[data-theme="dark"] footer::before,html[data-theme="dark"] .hero::before{opacity:.36;}
