:root{--paper:#fff;--ink:#0b0b0c;--muted:#626266;--line:#dedee0;--accent:#f54266;--accent-dark:#a10c2a;--accent-ink:#0b0b0c;--accent-on-dark:#f54266;--visual-hue:0deg;--display:'Barlow Condensed','Arial Narrow',Impact,sans-serif;--body:Manrope,Arial,sans-serif;--gutter:clamp(24px,4.5vw,88px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;-webkit-font-smoothing:antialiased}::selection{background:var(--accent);color:var(--ink)}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid currentColor;outline-offset:7px}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--display);font-weight:700;letter-spacing:-.018em;line-height:.89}section{scroll-margin-top:96px}.skip-link{position:fixed;left:20px;top:-80px;padding:16px;background:var(--accent);z-index:100}.skip-link:focus{top:16px}.site-header{height:104px;display:flex;align-items:center;gap:36px;padding:0 var(--gutter);background:rgba(255,255,255,.96);z-index:20;position:relative}.brand{width:144px;flex-shrink:0}.brand img{width:100%;height:auto}.site-header nav{margin-left:auto;display:flex;align-items:center;gap:40px;font-size:14px;font-weight:600}.site-header nav>a{position:relative;padding:12px 0}.site-header nav>a:after{content:'';position:absolute;bottom:3px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .25s}.site-header nav>a:hover:after{transform:scaleX(1)}.nav-contact{display:flex;align-items:center;gap:20px}.nav-contact span{font-size:24px}.hero{position:relative;padding:48px var(--gutter) 0;min-height:calc(100svh - 104px);overflow:hidden}.hero-kicker{font-size:12px;font-weight:600;letter-spacing:.075em;display:flex;align-items:center;gap:16px;position:relative;z-index:2}.short-rule{width:40px;height:1px;background:currentColor}.hero h1{font-size:clamp(98px,12.9vw,230px);position:relative;z-index:2;margin-top:35px;pointer-events:none;width:max-content;max-width:100%}.hero h1>span{display:block}.outline{color:transparent;-webkit-text-stroke:1.4px var(--ink)}.accent-dot{color:var(--accent)}.hero-art{position:absolute;width:61%;right:-5.5%;top:13%;z-index:1;transform:translate3d(var(--art-x,0px),var(--art-y,0px),0) rotate(var(--art-r,0deg));transition:transform 1.5s cubic-bezier(.15,.75,.25,1);will-change:transform}.hero-art img{width:100%;height:auto;mix-blend-mode:multiply}.hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:40px;position:relative;z-index:3;max-width:64%;margin-top:28px}.hero-bottom p{font-size:clamp(16px,1.25vw,19px);line-height:1.7;max-width:445px}.round-link{width:138px;height:138px;flex-shrink:0;border-radius:50%;background:var(--accent);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;font-size:12px;font-weight:700;transition:transform .3s,background .3s}.round-link:hover{transform:rotate(-8deg);background:var(--accent)}.round-arrow{font-size:29px;line-height:1}.hero-foot{display:flex;justify-content:space-between;gap:24px;border-top:1px solid var(--line);margin-top:44px;padding:20px 0;font-size:11px;font-weight:600;letter-spacing:.065em}.section-wrap{padding:110px var(--gutter)}.section-meta{display:flex;justify-content:space-between;gap:24px;font-size:12px;font-weight:600;letter-spacing:.06em;margin-bottom:52px}.services{background:#f4f4f4}.services h2{font-size:clamp(72px,8.2vw,144px)}.service-preview{margin-top:64px;border-top:1px solid #ccc}.service-preview>div{display:flex;align-items:center;gap:36px;padding:24px 0;border-bottom:1px solid #ccc}.service-preview span{font-size:13px}.service-preview h3{font-family:var(--display);font-size:clamp(32px,4vw,64px);font-weight:600;line-height:1.1}.contact{background:var(--ink);color:white}.contact h2{font-size:clamp(68px,10.5vw,185px)}.contact h2>span{color:var(--accent)}.contact-email{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #555;margin-top:55px;padding-bottom:24px;font-size:clamp(23px,4vw,58px);letter-spacing:-.045em}.contact-email span{font-size:1.2em;color:var(--accent)}
@media(min-width:1700px){.hero-art{top:5%;width:60%}.hero-bottom{max-width:60%}.hero{padding-top:60px}}
@media(max-width:1000px){.site-header{height:88px}.hero{min-height:auto;padding-top:34px}.hero-art{width:63%;right:-14%;top:17%}.hero h1{font-size:15.3vw}.hero-bottom{max-width:81%}.hero-foot{font-size:10px}.section-wrap{padding-top:88px;padding-bottom:88px}}
@media(max-width:640px){.site-header{height:82px;gap:20px}.brand{width:112px}.site-header nav{gap:22px;font-size:12px}.site-header nav>a:first-child{display:none}.nav-contact{gap:10px}.hero{padding-top:27px}.hero-kicker{font-size:10px;letter-spacing:.025em;gap:10px}.short-rule{width:22px}.hero h1{font-size:22vw;margin-top:26px;line-height:.88}.hero-art{width:89%;right:-34%;top:24%}.hero-bottom{max-width:100%;margin-top:31px;gap:20px;align-items:flex-start}.hero-bottom p{font-size:14px;line-height:1.7;max-width:70%}.round-link{width:88px;height:88px;font-size:10px;gap:2px;margin-top:7px}.round-arrow{font-size:22px}.hero-foot{margin-top:33px;padding:19px 0;font-size:9px;line-height:1.7}.hero-foot span:last-child{display:none}.section-wrap{padding-top:65px;padding-bottom:65px}.section-meta{font-size:10px;margin-bottom:34px}.section-meta span:last-child{max-width:45%;text-align:right}.services h2{font-size:15vw}.service-preview{margin-top:42px}.service-preview>div{gap:20px;padding:22px 0}.service-preview h3{font-size:35px}.contact h2{font-size:17vw}.contact-email{margin-top:34px;font-size:28px;padding-bottom:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.hero-art{transform:none!important;will-change:auto}}

/* Editorial system */
.reading-progress{position:fixed;top:0;left:0;right:0;height:3px;background:var(--ink);transform:scaleX(var(--read-progress,0));transform-origin:left;z-index:50;pointer-events:none}
.site-header{position:sticky;top:0;background:var(--paper);border-bottom:1px solid transparent;transition:border-color .25s,height .25s}
section{scroll-margin-top:0}
body:has(.mobile-menu[open]){overflow:hidden}
.site-header.is-scrolled{border-color:var(--line)}

.site-header nav{gap:clamp(22px,2.6vw,42px)}
.hero h1{line-height:.97}
.hero-foot{font-size:12px}
.accent-dot{color:var(--accent)}
.round-link{font-size:12px}
.hero-art{pointer-events:none;mask-image:linear-gradient(to bottom,transparent 0%,#000 5%,#000 85%,transparent 100%)}
.section-intro{max-width:520px;margin:34px 0 58px auto;font-size:18px;line-height:1.75}
.section-meta{font-size:12px}
.service-list{border-top:1px solid #bcbcc0}
.service{border-bottom:1px solid #bcbcc0;transition:background .25s}
.service summary{display:grid;grid-template-columns:42px 1fr 210px 40px;align-items:center;gap:24px;padding:31px 0;cursor:pointer;list-style:none}
.service summary::-webkit-details-marker,.case-details summary::-webkit-details-marker{display:none}
.service-number{font-size:13px;font-weight:600;align-self:center}
.service h3{font-family:var(--display);font-size:clamp(32px,4.15vw,74px);font-weight:600;letter-spacing:-.015em;line-height:1.03;transition:transform .25s}
.service summary:hover h3{transform:translateX(8px)}
.service-teaser{font-size:14px;line-height:1.7;color:#535358}
.disclosure-icon{font-size:31px;font-weight:400;line-height:1;justify-self:end;transition:transform .25s}
.service[open] .disclosure-icon{transform:rotate(45deg)}
.service[open] summary{padding-bottom:26px}
.service-content{display:grid;grid-template-columns:1fr 1fr;gap:72px;margin-left:66px;padding:0 64px 39px 0}
.service-content p{font-size:16px;line-height:1.8;max-width:570px}
.service-content ul{list-style:none;padding:0;margin:0 0 26px;display:grid;gap:9px;font-size:14px;line-height:1.7}
.service-content li:before{content:'—';margin-right:10px;color:#67676b}
.text-link{display:inline-flex;align-items:center;gap:24px;font-size:14px;font-weight:700;border-bottom:1px solid currentColor;padding:4px 0 8px;line-height:1.7}
.text-link span{font-size:22px;transition:transform .25s}
.text-link:hover span{transform:translate(3px,-3px)}
.approach{background:var(--ink);color:white;padding-top:100px;padding-bottom:100px}
.approach .section-meta{color:#b2b2b5}
.approach-heading{display:grid;grid-template-columns:1.4fr .65fr;gap:7vw;align-items:end}
.approach h2{font-size:clamp(76px,8.7vw,155px);line-height:.94}
.approach h2 span{color:var(--accent)}
.approach-heading>p{font-size:18px;line-height:1.85;color:#c1c1c5;max-width:390px;padding-bottom:9px}
.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;margin-top:85px}
.process-step{border-top:1px solid #505053;padding-top:23px}
.step-number{font-size:12px;letter-spacing:.06em;color:var(--accent)}
.process-step h3{font-size:26px;line-height:1.32;letter-spacing:-.035em;margin:25px 0 20px;font-weight:600}
.process-step p{font-size:16px;color:#b7b7bd;line-height:1.85;max-width:350px}
.split-heading{display:grid;grid-template-columns:1.4fr .65fr;gap:7vw;align-items:end}
.split-heading h2{font-size:clamp(70px,7.6vw,140px);line-height:.97}
.split-heading>p{font-size:16px;line-height:1.8;max-width:395px;margin-bottom:5px;color:#545459}
.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:6vw;margin-top:70px}
.case-transformation{margin-top:146px}
.case-visual{aspect-ratio:1.23;position:relative;display:flex;flex-direction:column;padding:32px;overflow:hidden}
.visual-label,.visual-caption{font-size:12px;letter-spacing:.08em;font-weight:600}
.visual-caption{margin-top:auto;position:relative;z-index:1}
.migration-visual{color:white;background:#111114}
.migration-system{font-family:var(--display);font-size:clamp(45px,5vw,84px);line-height:1;margin-top:36px;color:#f4f4f6;letter-spacing:.015em}
.migration-target{font-family:var(--display);font-size:clamp(38px,4.4vw,80px);font-weight:600;line-height:1;letter-spacing:.01em;display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:35px;color:var(--accent)}
.migration-target>span{font-size:.7em;font-family:var(--body)}
.migration-flow{height:clamp(38px,6vw,96px);display:flex;align-items:center;gap:8px;position:relative;max-width:100%;margin:9px 0}
.migration-flow>span{height:1px;background:#55555b;flex:1}
.migration-flow b{font-size:29px;font-weight:400;color:var(--accent);line-height:1;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#111114;padding:0 15px}
.transformation-visual{background:var(--accent)}
.organization-stack{margin:auto 0;display:grid;gap:0;transform:rotate(-5deg);padding:18px 0}
.organization-stack>div{font-family:var(--display);font-size:clamp(33px,3.7vw,64px);font-weight:600;display:flex;gap:20px;align-items:center;line-height:1.15;padding:12px 0;border-bottom:1px solid var(--accent-dark);white-space:nowrap}
.organization-stack>div:first-child{border-top:1px solid var(--accent-dark)}
.organization-stack>div>span{font-size:12px;font-family:var(--body);font-weight:500;letter-spacing:0}
.case-meta{display:flex;justify-content:space-between;gap:20px;margin-top:26px;font-size:12px;line-height:1.65;color:#606065;letter-spacing:.03em}
.case-meta>span:last-child{text-align:right}
.case h3{font-family:var(--display);font-size:clamp(42px,4.1vw,70px);font-weight:600;line-height:1.02;margin:15px 0 21px}
.case-summary{font-size:16px;line-height:1.8;max-width:520px;color:#505055}
.case-details{margin-top:22px;border-bottom:1px solid #bcbcc0}
.case-details summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:15px 0;font-size:14px;font-weight:700;cursor:pointer;list-style:none;line-height:1.6}
.case-details summary>span{font-size:24px;transition:transform .25s}
.case-details[open] summary>span{transform:rotate(45deg)}
.case-details>div{padding:6px 0 24px}
.case-details h4{font-size:14px;margin:15px 0 10px}
.case-details p{font-size:16px;line-height:1.8;color:#505055}
.packages{background:#f4f4f4}
.package-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:60px;border-top:1px solid #bcbcc0}
.package-grid article{display:flex;flex-direction:column;align-items:flex-start;padding:40px 5vw 42px 0;border-bottom:1px solid #bcbcc0}
.package-grid article:nth-child(even){padding-left:5vw;padding-right:0;border-left:1px solid #bcbcc0}
.package-number{font-size:12px;line-height:1.5;letter-spacing:.035em;color:#606065}
.package-grid h3{font-size:clamp(26px,2.55vw,44px);font-weight:600;line-height:1.16;letter-spacing:-.045em;margin:29px 0 20px}
.package-grid p{font-size:16px;line-height:1.8;color:#55555b;max-width:460px;margin-bottom:28px}
.package-grid .text-link{margin-top:auto}
.engagement{display:grid;grid-template-columns:1fr 1fr;gap:7vw;margin-top:60px}
.engagement h3{font-family:var(--display);font-size:clamp(37px,4.2vw,70px);font-weight:600;line-height:1}
.engagement p{font-size:16px;line-height:1.8;max-width:550px}
.engagement span{font-size:12px;font-weight:700;letter-spacing:.045em;display:block;margin-top:24px;line-height:1.7}
.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:center}
.about h2{font-size:clamp(110px,15vw,260px);line-height:.98}
.about-caption{font-size:12px;font-weight:600;letter-spacing:.045em;display:block;margin-top:25px;line-height:1.7}
.about-copy{padding-top:13px;max-width:590px}
.about-copy .about-lead{font-size:clamp(24px,2.6vw,42px);font-weight:500;letter-spacing:-.035em;line-height:1.4;color:var(--ink);margin-bottom:30px}
.about-copy p{font-size:16px;line-height:1.85;color:#57575c;margin-bottom:20px}
.about-copy .text-link{margin-top:10px}
.contact{background:var(--accent);color:var(--ink);padding-top:90px;padding-bottom:26px}
.contact h2>span,.contact-email span{color:var(--ink)}
.contact h2{line-height:.98}
.contact>p{margin-top:36px;font-size:18px;line-height:1.8}
.contact-email{border-color:var(--accent-dark)}
.contact-email:hover span{transform:translate(6px,-6px)}
.contact-email span{transition:transform .3s}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:60px;padding-top:15px;font-size:12px;font-weight:600;letter-spacing:.045em}
.footer-bottom a{display:flex;gap:24px;align-items:center;min-height:44px}
.footer-bottom a>span{font-size:22px}
.menu-toggle{display:none;align-items:center;gap:12px;padding:8px 0;background:none;border:0;font-size:14px;font-weight:600;color:var(--ink);cursor:pointer;margin-left:auto}
.menu-toggle span{font-size:28px}
.mobile-menu{position:fixed;inset:0;width:100%;max-width:none;height:100svh;max-height:none;margin:0;padding:26px var(--gutter);border:0;background:var(--ink);color:#fff;overflow:auto}
.mobile-menu::backdrop{background:rgba(0,0,0,.45)}
.menu-head{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px;letter-spacing:.045em}
.menu-close{border:0;background:none;color:#fff;font-size:14px;display:flex;align-items:center;gap:14px;cursor:pointer;padding:8px 0}
.menu-close span{font-size:30px}
.mobile-menu nav{display:flex;flex-direction:column;margin:44px 0}
.mobile-menu nav>a{font-family:var(--display);font-size:clamp(40px,11vw,78px);line-height:1.1;padding:14px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #44444b}
.mobile-menu nav>a>span{font-family:var(--body);font-size:13px;color:var(--accent)}
.menu-email{font-size:18px;color:var(--accent);display:inline-block;line-height:1.7}
.js-motion .reveal{opacity:0;transform:translateY(24px);transition:opacity .8s,transform .8s cubic-bezier(.2,.7,.25,1)}
.js-motion .reveal.is-visible{opacity:1;transform:none}

@media(max-width:1150px){
 .service summary{grid-template-columns:32px 1fr 170px 32px;gap:19px}.service-teaser{font-size:13px}.service-content{margin-left:51px;gap:40px;padding-right:30px}.approach-heading,.split-heading{grid-template-columns:1.5fr .8fr;gap:5vw}.process-grid{gap:32px}.case-visual{padding:25px}.migration-system{margin-top:24px}.organization-stack>div{gap:13px}.visual-caption{font-size:12px;line-height:1.6}.case-meta{font-size:12px}
}
@media(max-width:850px){
 .site-header .desktop-nav{display:none}.menu-toggle{display:flex}.hero h1{line-height:.98}.hero-foot{font-size:12px;line-height:1.6}.hero-foot span:last-child{max-width:45%;text-align:right}.service summary{grid-template-columns:28px 1fr 28px;gap:18px}.service-teaser{display:none}.service h3{font-size:clamp(33px,5.7vw,50px)}.service-content{margin-left:46px;gap:28px;padding-right:0}.section-intro{margin-left:0;max-width:580px;font-size:17px}.approach-heading{grid-template-columns:1fr}.approach h2{font-size:12vw}.approach-heading>p{max-width:550px;font-size:17px;margin-top:24px}.process-grid{margin-top:58px;gap:26px}.process-step h3{font-size:22px}.process-step p{font-size:16px}.split-heading{grid-template-columns:1fr;gap:28px}.split-heading h2{font-size:10vw}.split-heading>p{max-width:570px}.case-grid{gap:36px}.case-transformation{margin-top:86px}.case-visual{padding:20px;aspect-ratio:1}.migration-system{font-size:44px}.migration-target{font-size:34px;margin-bottom:23px}.migration-flow{height:42px}.organization-stack>div{font-size:30px;gap:10px;padding:12px 0}.visual-label,.visual-caption{font-size:12px;letter-spacing:.02em}.case-meta{display:block;line-height:1.9}.case-meta span{display:block}.case-meta span:last-child{text-align:left}.case h3{font-size:40px}.engagement{gap:35px}.about-layout{gap:35px}.about h2{font-size:18vw}.about-copy .about-lead{font-size:25px}.about-caption{font-size:12px;letter-spacing:0}
}
@media(max-width:640px){
 .hero-kicker{font-size:12px;line-height:1.6;max-width:300px}.short-rule{flex-shrink:0}.hero h1{font-size:22vw;margin-top:25px}.hero-art{top:27%;right:-31%;width:84%}.hero-bottom{margin-top:31px;gap:15px}.hero-bottom p{font-size:16px;line-height:1.75;max-width:calc(100% - 110px)}.round-link{width:95px;height:95px;font-size:12px;gap:5px;margin-top:7px}.round-arrow{font-size:23px}.hero-foot{font-size:12px;line-height:1.7;margin-top:32px}.hero-foot span:last-child{display:none}.section-meta{font-size:12px;line-height:1.7;gap:18px;margin-bottom:30px}.section-meta span:last-child{max-width:46%;text-align:right}.services h2{font-size:15vw;line-height:.99}.section-intro{font-size:16px;line-height:1.8;margin:26px 0 40px}.service summary{padding:25px 0;grid-template-columns:22px 1fr 23px;gap:12px}.service h3{font-size:8.2vw;line-height:1.05}.service-number{font-size:12px}.disclosure-icon{font-size:25px}.service-content{grid-template-columns:1fr;margin-left:34px;gap:22px;padding-bottom:30px}.service-content p{font-size:16px}.service-content ul{font-size:14px}.service[open] summary{padding-bottom:23px}.text-link{font-size:14px;gap:16px}.approach{padding-top:65px;padding-bottom:65px}.approach h2{font-size:15vw;line-height:1}.approach-heading>p{font-size:16px;margin-top:4px}.process-grid{grid-template-columns:1fr;gap:29px;margin-top:40px}.process-step{display:grid;grid-template-columns:1fr 1fr;column-gap:20px;padding-top:20px}.step-number{grid-column:1/-1}.process-step h3{font-size:23px;line-height:1.25;margin:18px 0 0}.process-step p{font-size:14px;line-height:1.8;margin-top:18px}.split-heading h2{font-size:12.9vw;line-height:1.01}.case-grid{grid-template-columns:1fr;gap:50px;margin-top:37px}.case-transformation{margin-top:0}.case-visual{padding:26px;aspect-ratio:1.15}.migration-system{font-size:13vw;margin-top:30px}.migration-target{font-size:11vw;margin-bottom:25px}.migration-flow{height:45px}.organization-stack>div{font-size:10.2vw;gap:17px;padding:12px 0}.case-meta{display:flex;gap:16px;margin-top:22px;font-size:12px;line-height:1.7}.case-meta span:last-child{text-align:right;max-width:52%}.case h3{font-size:44px;margin-top:14px}.case-summary{font-size:16px}.case-details p{font-size:16px}.package-grid{grid-template-columns:1fr;margin-top:37px}.package-grid article,.package-grid article:nth-child(even){padding:29px 0 31px;border-left:0}.package-grid h3{font-size:31px;margin:22px 0 17px;line-height:1.18}.package-grid p{font-size:16px;margin-bottom:20px}.engagement{grid-template-columns:1fr;gap:24px;margin-top:39px}.engagement h3{font-size:42px;line-height:1.03}.engagement p{font-size:16px}.engagement span{font-size:12px}.about-layout{grid-template-columns:1fr;gap:36px}.about h2{font-size:29vw;line-height:.99}.about-caption{font-size:12px;margin-top:20px;max-width:260px}.about-copy{padding-top:0}.about-copy .about-lead{font-size:26px;margin-bottom:24px}.about-copy p{font-size:16px}.contact{padding-top:65px;padding-bottom:23px}.contact h2{font-size:16vw;line-height:1.01}.contact>p{font-size:16px;margin-top:28px}.contact-email{font-size:28px;letter-spacing:-.04em}.footer-bottom{font-size:12px;letter-spacing:0;gap:14px;line-height:1.7;margin-top:38px}.footer-bottom a{gap:10px;text-align:right;max-width:52%}
}
@media(prefers-reduced-motion:reduce){.js-motion .reveal{opacity:1;transform:none}.reading-progress{display:none}}

@media(max-width:640px){
 .hero{display:flex;flex-direction:column}
 .hero-kicker{order:0}
 .hero h1{order:1;font-size:20vw}
 .hero-art{order:2;position:relative;top:auto;right:auto;width:112%;align-self:flex-end;margin:-12px -12% -33px 0;flex-shrink:0;transform:none;will-change:auto}
 .hero-bottom{order:3;margin-top:24px}
 .hero-foot{order:4}
 .process-step p{font-size:16px}
}

/* Live palette: the wordmark stays black; hue changes never reduce text contrast. */
::selection,.skip-link,.round-link,.transformation-visual,.contact,.legal-footer,.form-notice{color:var(--accent-ink)}
.contact h2>span,.contact-email span{color:inherit}
.approach h2 span,.step-number,.migration-target,.migration-flow b,.mobile-menu nav>a>span,.menu-email,.form-submit span{color:var(--accent-on-dark)}
.hero-art img{filter:hue-rotate(var(--visual-hue))}
.theme-toggle{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;padding:0;border:0;border-radius:50%;background:transparent;color:var(--ink);margin-left:-12px}
.theme-toggle[hidden],.theme-panel[hidden]{display:none}
.theme-toggle:hover,.theme-toggle[aria-expanded="true"]{background:#f4f4f4}
.theme-toggle svg{transition:transform .4s}
.theme-toggle[aria-expanded="true"] svg{transform:rotate(60deg)}
.theme-panel{position:fixed;top:80px;right:var(--gutter);width:320px;max-width:calc(100vw - 48px);max-height:calc(100svh - 100px);overflow:auto;padding:24px;background:var(--paper);color:var(--ink);border:1px solid var(--line);box-shadow:0 18px 60px #00000018;z-index:60}
.theme-panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:25px}
.theme-panel h2{font-family:var(--body);font-size:20px;line-height:1.3;font-weight:600;letter-spacing:-.03em}
.theme-close{display:grid;place-items:center;min-width:32px;min-height:32px;font-size:25px;line-height:1;border:0;padding:0;background:transparent;color:inherit}
.theme-panel label{display:block;font-size:13px;font-weight:600}
#accent-hue{display:block;width:100%;height:36px;padding:0;margin:10px 0 21px;appearance:none;background:transparent;cursor:pointer}
#accent-hue::-webkit-slider-runnable-track{height:10px;border-radius:8px;background:linear-gradient(to right,#f54242,#f5f542,#42f542,#42f5f5,#4242f5,#f542f5,#f54242)}
#accent-hue::-moz-range-track{height:10px;border-radius:8px;background:linear-gradient(to right,#f54242,#f5f542,#42f542,#42f5f5,#4242f5,#f542f5,#f54242)}
#accent-hue::-webkit-slider-thumb{appearance:none;width:22px;height:22px;margin-top:-6px;border-radius:50%;background:var(--accent);border:3px solid white;box-shadow:0 0 0 1px var(--ink)}
#accent-hue::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--accent);border:3px solid white;box-shadow:0 0 0 1px var(--ink)}
#accent-hue:focus-visible{outline:2px solid var(--ink);outline-offset:5px}
.theme-swatches{display:grid;gap:14px}
.theme-swatches>div{display:flex;align-items:center;gap:12px;font-size:12px;line-height:1.65}
.theme-swatch{width:32px;height:32px;flex-shrink:0;background:var(--accent);border-radius:50%;border:1px solid #0000001a}
.theme-swatch-dark{background:var(--accent-dark)}
.theme-swatches output{display:block;font-size:13px;font-weight:600;font-variant-numeric:tabular-nums}
.theme-panel p{font-size:12px;line-height:1.7;margin:22px 0 14px;color:var(--muted)}
.theme-reset{width:100%;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border:0;border-top:1px solid var(--line);background:transparent;color:var(--ink);font-size:12px;text-align:left}
.theme-reset span{font-size:20px}
@media(max-width:1150px){.site-header{gap:22px}.site-header nav{gap:22px}.theme-toggle{margin-left:-8px}}
@media(max-width:640px){.site-header{gap:14px}.theme-toggle{margin-left:-4px;width:36px;height:44px}.theme-panel{top:70px}}
@media print{.theme-toggle,.theme-panel{display:none!important}}

@media(max-width:380px){.hero-bottom{align-items:center;flex-wrap:wrap}.hero-bottom p{max-width:100%}.hero-bottom .round-link{margin:2px 0 0 auto}}
