:root{color-scheme:light;--base:#FAFAF8;--surface:#fff;--muted:#F3F2EF;--border:#E7E5E0;--text:#241318;--secondary:#6B5E56;--burgundy:#49233D;--rust:#A22D2F;--sage:#7E9070;--forest:#3E4E37;--gradient:linear-gradient(45deg,#A22D2F 0%,#49233D 100%);--shadow-sm:0 2px 8px rgba(36,19,24,.08);--shadow-md:0 12px 32px rgba(36,19,24,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:var(--base);color:var(--text);font-family:Outfit,-apple-system,'Segoe UI',sans-serif;font-size:16px;line-height:150%}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}a:visited{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid rgba(162,45,47,.6);outline-offset:4px}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600;color:var(--burgundy)}h1{font-size:34px;line-height:100%}h2{font-size:26px;line-height:120%;text-wrap:balance}h3{font-size:18px;font-weight:500;line-height:130%}p{line-height:150%}svg.lucide{width:24px;height:24px;stroke-width:2.5;flex-shrink:0}.container{width:100%;max-width:1296px;padding:0 24px;margin:auto}.eyebrow{font-size:12px;font-weight:500;line-height:130%;color:var(--rust);margin-bottom:24px}.caption{font-size:13px;line-height:140%;color:var(--secondary)}header{position:sticky;top:0;z-index:100;background:rgba(250,250,248,.92);backdrop-filter:blur(16px);transition:background .25s,box-shadow .25s}header.scrolled{background:var(--base);box-shadow:var(--shadow-sm)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:88px}.brand{display:inline-flex;min-height:44px;align-items:center}.brand img{width:168px;height:auto;display:block}.header-inner>nav,.header-cta{display:none!important}.menu-toggle{border:1px solid var(--border);background:transparent;border-radius:12px;width:48px;height:48px;display:grid;place-items:center;color:var(--burgundy)}#mobile-nav{padding:16px 24px 24px;border-bottom:1px solid var(--border);background:var(--base);max-height:calc(100dvh - 88px);overflow:auto}#mobile-nav:not([hidden]){display:grid}nav a{font-size:14px;min-height:44px;display:inline-flex;align-items:center;position:relative}nav a:after{content:'';position:absolute;bottom:8px;left:0;right:0;height:2px;background:var(--rust);transform:scaleX(0);transform-origin:left;transition:transform .25s}nav a:hover:after,nav a:focus-visible:after,nav a.active:after{transform:scaleX(1)}.button{background:var(--burgundy);color:white!important;border:0;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:16px 24px;min-height:48px;font-size:15px;font-weight:500;line-height:100%;transition:transform .15s,box-shadow .15s,background .15s}.button:hover{background:var(--rust);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.button:active{transform:scale(.98)}.hero{position:relative;padding-top:48px;overflow:hidden}.hero-grid{display:grid;gap:16px;align-items:center}.hero h1 span{color:var(--rust)}.hero-description{margin-top:32px;max-width:560px;color:var(--secondary)}.actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-top:32px}.text-link{display:inline-flex;align-items:center;gap:8px;min-height:48px;font-size:15px;font-weight:500;color:var(--burgundy)}.text-link:hover{text-decoration:underline;text-underline-offset:8px}.hero-art{position:relative;isolation:isolate;min-width:0;aspect-ratio:1/1}.hero-art img{width:100%;height:100%;object-fit:contain;position:relative;mix-blend-mode:multiply;will-change:transform}.hero-halo{position:absolute;inset:16% 0 0;background:var(--gradient);border-radius:50%;opacity:.045;filter:blur(32px);z-index:-1}.section{padding:96px 0}.muted{background:var(--muted)}.section-intro{max-width:720px;margin-bottom:48px}.section-intro>p:last-child:not(.eyebrow){margin-top:24px;color:var(--secondary)}.cards,.capability-grid,.audience-grid,.principles-grid{display:grid;gap:16px}.card{padding:32px;background:var(--surface);border:1px solid var(--border);border-radius:16px}.icon{width:48px;height:48px;border-radius:12px;background:#F3E9E8;color:var(--rust);display:grid;place-items:center;margin-bottom:24px}.card:nth-child(3n+2) .icon{background:#EAEDE6;color:var(--forest)}.card:nth-child(3n+3) .icon{background:#EDE7EB;color:var(--burgundy)}.card p{margin-top:16px;color:var(--secondary)}.closing{margin-top:32px;max-width:800px;color:var(--secondary)}.capability-grid .card{background:transparent}.split{display:grid;gap:0}.audience-grid .card{border:0;background:transparent;padding:24px 0;border-top:1px solid var(--border);border-radius:0}.audience-grid .icon{background:transparent;margin-bottom:16px;justify-content:start;width:32px;height:32px}.steps{display:grid;gap:32px}.step{position:relative;padding-left:72px}.step-number{position:absolute;left:0;top:0;display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:var(--gradient);color:white;font-size:18px}.step p{margin-top:16px;color:var(--secondary)}.expectations{background:var(--muted)}.deliverables{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:24px}.deliverables>p:first-child{font-weight:500}.deliverables ul{list-style:none;margin:24px 0 32px;padding:0}.deliverables li{display:flex;gap:16px;padding:8px 0}.deliverables li svg{color:var(--forest);width:20px;height:24px}.principles-grid .card{padding:32px 0;border:0;border-top:1px solid var(--border);border-radius:0;background:transparent}.faq-list details{border-bottom:1px solid var(--border)}.faq-list details:first-child{border-top:1px solid var(--border)}summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0;font-size:18px;font-weight:500;line-height:130%;color:var(--burgundy)}summary::-webkit-details-marker{display:none}.plus{font-size:26px;font-weight:400;transition:transform .25s}.faq-list details[open] .plus{transform:rotate(45deg)}.faq-list details>p{padding:0 40px 24px 0;color:var(--secondary)}.contact-inner{text-align:center;max-width:800px}.contact-inner>p:not(.eyebrow){margin:24px auto 0;max-width:640px}.contact h2{font-size:34px;line-height:120%}.email-pending{display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:24px;margin-top:32px;border:1px solid var(--border);border-radius:16px;background:var(--muted);font-size:18px;color:var(--secondary)}footer{background:var(--muted);padding:48px 0 24px}.footer-top{display:flex;flex-direction:column;gap:32px;padding-bottom:32px}.footer-top .caption{margin-top:24px;line-height:180%}.footer-top nav{display:grid;grid-template-columns:repeat(2,1fr);gap:0 32px}.footer-bottom{border-top:1px solid var(--border);padding-top:24px;display:flex;flex-direction:column;gap:16px}.legal-links{display:flex;gap:24px;flex-wrap:wrap}.legal-links button{padding:8px 0;min-height:44px;border:0;background:transparent;font-size:14px;color:var(--secondary)}.legal-links button:hover{color:var(--rust);text-decoration:underline}dialog{border:1px solid var(--border);border-radius:16px;background:var(--base);color:var(--text);padding:32px;max-width:520px;width:calc(100% - 48px)}dialog::backdrop{background:rgba(36,19,24,.35)}.dialog-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.dialog-header button{width:44px;height:44px;border:0;background:transparent;font-size:28px;color:var(--burgundy)}
@media(min-width:768px){body{font-size:17px}.container{padding:0 32px}h1{font-size:44px}h2{font-size:32px}h3{font-size:19px}.eyebrow{font-size:13px}.caption{font-size:14px}.hero-grid{grid-template-columns:1.1fr 1fr;gap:0}.hero{padding-top:64px}.hero-art{width:112%;margin-left:-8%}.cards,.audience-grid,.principles-grid{grid-template-columns:repeat(2,1fr);gap:24px}.capability-grid{grid-template-columns:repeat(6,1fr);gap:24px}.capability-grid .card{grid-column:span 3}.capability-grid .card:last-child{grid-column:span 6}.steps{grid-template-columns:repeat(2,1fr);gap:48px 24px}.footer-top{flex-direction:row;justify-content:space-between}.footer-top nav{grid-template-columns:repeat(3,1fr)}.footer-bottom{flex-direction:row;align-items:center;justify-content:space-between}.contact h2{font-size:44px}}
@media(min-width:1024px){body{font-size:18px}.container{padding:0 48px}h1{font-size:60px}h2{font-size:38px}h3{font-size:20px}.section{padding:128px 0}.header-inner{min-height:104px;gap:24px}.brand img{width:176px}.header-inner>nav{display:flex!important;gap:16px}.header-cta{display:inline-flex!important;padding:16px}.menu-toggle,#mobile-nav{display:none!important}.hero{padding-top:48px}.hero-grid{grid-template-columns:1.05fr 1fr}.hero-art{width:116%;margin-left:-8%}.three{grid-template-columns:repeat(3,1fr)}.capability-grid .card{grid-column:span 2}.capability-grid .card:nth-child(n+4){grid-column:span 3}.split{grid-template-columns:5fr 7fr;gap:64px}.split .section-intro{margin:0}.audience-grid .card{padding:24px 0}.steps{grid-template-columns:repeat(5,1fr);gap:24px}.step{padding:0}.step-number{position:relative;margin-bottom:32px}.step:not(:last-child):after{content:'';position:absolute;top:24px;left:64px;right:0;height:1px;background:var(--border)}.deliverables{padding:32px}.principles-grid{grid-template-columns:repeat(4,1fr)}.faq-layout{grid-template-columns:4fr 8fr}.contact h2{font-size:48px}.contact-inner{max-width:880px}.contact .eyebrow{margin-bottom:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.hero-art img{will-change:auto}}

/* Built for B2B growth: one open panel at a time. */
#who-we-help{background:#fff;position:relative;isolation:isolate;overflow:hidden}
#who-we-help:before{content:"";position:absolute;z-index:-1;width:720px;height:620px;right:10%;top:50%;transform:translateY(-50%);background:radial-gradient(circle,rgba(251,98,103,.14),transparent 67%);pointer-events:none}
#who-we-help .audience-layout{align-items:center}
#who-we-help .section-intro{max-width:680px}
#who-we-help .section-intro h2{font-size:clamp(2rem,3vw,3.3rem);line-height:1.17;max-width:620px}
#who-we-help .section-intro>p:last-child{font-size:clamp(1rem,1.2vw,1.35rem);line-height:1.55;max-width:640px}
.audience-panels{display:flex;flex-direction:column;gap:8px;min-width:0}
.audience-panel{position:relative;min-width:0;background:#fff;border:1px solid #f4efee;border-radius:15px;box-shadow:0 12px 35px rgba(72,29,50,.025);overflow:hidden;transition:flex-basis .65s cubic-bezier(.22,1,.36,1),box-shadow .4s}
.audience-panel:hover{box-shadow:0 15px 34px rgba(72,29,50,.09)}
.audience-tab{width:100%;display:flex;align-items:center;gap:14px;text-align:left;padding:22px 64px 22px 24px;border:0;background:transparent;color:#953942;font-size:1.1rem;font-weight:650;line-height:1.1;letter-spacing:.01em}
.audience-tab:before{content:"↙";font-size:1.8rem;line-height:1;color:#dfcfc4;font-weight:300;transition:transform .45s cubic-bezier(.22,1,.36,1)}
.audience-panel.is-active .audience-tab:before{transform:rotate(180deg)}
.audience-detail{display:grid;grid-template-rows:1fr;opacity:1;padding:0 26px 28px;transition:grid-template-rows .5s,opacity .35s,padding .5s}
.audience-detail h3{font-size:1.35rem;font-weight:500;line-height:1.2;color:#513044}
.audience-detail p{margin-top:20px;font-size:1rem;line-height:1.55;color:#2b2630;max-width:350px}
.audience-panel:not(.is-active) .audience-detail{display:none}
.audience-next{position:absolute;right:12px;top:12px;display:grid;place-items:center;width:46px;height:46px;border:0;border-radius:10px;background:transparent;color:#decbbf;font-size:2.2rem;font-weight:300;line-height:1;transition:color .3s,transform .4s,background .3s}
.audience-next:hover{color:#953942;background:#fbf3f1;transform:translate(2px,-2px)}
.audience-panel:not(.is-active) .audience-next{visibility:hidden;pointer-events:none}
@media(min-width:1024px){#who-we-help .audience-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:clamp(28px,4vw,72px)}.audience-panels{height:485px;flex-direction:row;gap:8px}.audience-panel{height:100%;flex:0 0 clamp(59px,5vw,88px);border:0}.audience-panel.is-active{flex:1 1 0;min-width:0}.audience-tab{position:absolute;inset:0;width:100%;height:100%;padding:0;display:block}.audience-tab span{position:absolute;left:50%;bottom:26px;transform:translateX(-50%) rotate(180deg);writing-mode:vertical-rl;white-space:nowrap;font-size:clamp(1.35rem,2vw,2.4rem);font-weight:700;line-height:1}.audience-tab:before{position:absolute;top:27px;left:50%;transform:translateX(-50%)}.audience-panel.is-active .audience-tab{width:clamp(59px,5vw,88px);cursor:default}.audience-panel.is-active .audience-tab:before{transform:translateX(-50%) rotate(180deg);visibility:hidden}.audience-detail{position:absolute;top:50%;left:clamp(95px,10vw,180px);right:30px;transform:translateY(-50%);display:block;padding:0;min-width:0;transition:opacity .35s ease .16s,transform .5s cubic-bezier(.22,1,.36,1)}.audience-panel:not(.is-active) .audience-detail{display:block;opacity:0;transform:translate(14px,-50%);pointer-events:none}.audience-detail h3{font-size:clamp(1.4rem,1.7vw,2rem)}.audience-detail p{margin-top:clamp(24px,3vw,42px);font-size:clamp(1rem,1.05vw,1.2rem)}.audience-next{right:18px;top:18px}}
@media(min-width:1400px){#who-we-help .container{max-width:1440px}.audience-panels{height:520px;gap:10px}.audience-panel{flex-basis:clamp(58px,4.2vw,82px)}.audience-panel.is-active .audience-tab{width:clamp(58px,4.2vw,82px)}}
@media(prefers-reduced-motion:reduce){.audience-panel,.audience-detail,.audience-tab:before,.audience-next{transition:none}}
@media(max-width:1023px){.audience-detail{display:block;max-height:300px;overflow:hidden;transition:max-height .55s cubic-bezier(.22,1,.36,1),opacity .35s,padding .55s}.audience-panel:not(.is-active) .audience-detail{display:block;max-height:0;opacity:0;padding-top:0;padding-bottom:0}.audience-panel:not(.is-active) .audience-tab{cursor:pointer}}
.audience-panel{border:1px solid rgba(243,242,239,.8)}
@media(min-width:1024px){.audience-panel.is-active .audience-detail{left:clamp(72px,5.4vw,110px);right:18px;display:flex;flex-direction:column;align-items:center}.audience-panel.is-active .audience-detail h3,.audience-panel.is-active .audience-detail p{width:min(100%,330px)}}
@media(min-width:1024px){#who-we-help .section-intro h2{font-size:38px}#who-we-help .section-intro>p:last-child{font-size:18px}.audience-tab span{font-size:clamp(1.15rem,1.5vw,1.65rem)}}
@media(min-width:1400px){.audience-panel.is-active .audience-detail{left:clamp(58px,4.2vw,82px)}}
@media(min-width:1024px){#who-we-help .audience-panels{height:440px}#who-we-help .audience-detail p{font-size:18px}}
@media(min-width:1400px){#who-we-help .audience-panels{height:460px}}

/* A quiet four-channel flow links the five process stages. */
#approach .step{isolation:isolate}
#approach .step-number{z-index:2}
#approach .data-link{position:absolute;z-index:0;pointer-events:none;--phase:0s}
#approach .step:nth-child(2) .data-link{--phase:2.4s}
#approach .step:nth-child(3) .data-link{--phase:4.8s}
#approach .step:nth-child(4) .data-link{--phase:7.2s}
#approach .data-lane{position:absolute;display:block;overflow:visible;opacity:.72}
#approach .data-lane:nth-child(1){--lag:0s}
#approach .data-lane:nth-child(2){--lag:.18s}
#approach .data-lane:nth-child(3){--lag:.38s}
#approach .data-lane:nth-child(4){--lag:.58s}
#approach .data-signal{position:absolute;display:block;filter:drop-shadow(0 0 4px rgba(169,42,48,.32))}
#approach .data-signal:after{content:"";position:absolute;width:5px;height:5px;border-radius:50%;background:#bd363c;box-shadow:0 0 7px 2px rgba(189,54,60,.4)}
@media(min-width:1024px){#approach .step:not(:last-child):after{display:none}#approach .data-link{left:64px;right:-18px;top:0;height:48px}#approach .data-lane{left:0;right:0;height:1px;background:linear-gradient(90deg,rgba(162,45,47,.12),rgba(162,45,47,.24) 55%,rgba(162,45,47,.11))}#approach .data-lane:nth-child(1){top:15px}#approach .data-lane:nth-child(2){top:21px;opacity:.45}#approach .data-lane:nth-child(3){top:27px;opacity:.64}#approach .data-lane:nth-child(4){top:33px;opacity:.38}#approach .data-signal{top:-1px;left:-54px;width:54px;height:3px;background:linear-gradient(90deg,transparent,rgba(178,47,52,.12) 28%,rgba(189,54,60,.72) 92%);border-radius:10px;animation:data-flow 9.6s cubic-bezier(.45,0,.3,1) calc(var(--phase) + var(--lag) - 9.6s) infinite}#approach .data-signal:after{right:0;top:-1px}}
@keyframes data-flow{0%{left:-54px;opacity:0}3%{opacity:1}20%{left:calc(100% - 54px);opacity:1}24%,100%{left:calc(100% - 54px);opacity:0}}
@media(max-width:1023px){#approach .steps{grid-template-columns:1fr;max-width:680px;gap:32px}#approach .step:not(:last-child){min-height:140px}#approach .data-link{left:19px;top:56px;bottom:-56px;width:14px}#approach .data-lane{top:0;bottom:0;width:1px;background:linear-gradient(180deg,rgba(162,45,47,.15),rgba(162,45,47,.24) 55%,rgba(162,45,47,.12))}#approach .data-lane:nth-child(1){left:0}#approach .data-lane:nth-child(2){left:4px;opacity:.45}#approach .data-lane:nth-child(3){left:8px;opacity:.64}#approach .data-lane:nth-child(4){left:12px;opacity:.38}#approach .data-signal{left:-1px;top:-54px;width:3px;height:54px;background:linear-gradient(180deg,transparent,rgba(178,47,52,.12) 28%,rgba(189,54,60,.72) 92%);border-radius:10px;animation:data-flow-vertical 9.6s cubic-bezier(.45,0,.3,1) calc(var(--phase) + var(--lag) - 9.6s) infinite}#approach .data-signal:after{left:-1px;bottom:0}}
@keyframes data-flow-vertical{0%{top:-54px;opacity:0}3%{opacity:1}20%{top:calc(100% - 54px);opacity:1}24%,100%{top:calc(100% - 54px);opacity:0}}
@media(prefers-reduced-motion:reduce){#approach .data-signal{animation:none;display:none}}
#approach .step-number{--arrival:0s;animation:node-receive 9.6s ease-in-out calc(var(--arrival) - 9.6s) infinite}
#approach .step:nth-child(2) .step-number{--arrival:1.92s}
#approach .step:nth-child(3) .step-number{--arrival:4.32s}
#approach .step:nth-child(4) .step-number{--arrival:6.72s}
#approach .step:nth-child(5) .step-number{--arrival:9.12s}
@keyframes node-receive{0%,2.5%,100%{filter:brightness(1.25);box-shadow:0 0 0 5px rgba(189,54,60,.14),0 0 26px rgba(189,54,60,.48)}7%,95%{filter:brightness(1);box-shadow:0 0 0 0 rgba(189,54,60,0),0 0 0 rgba(189,54,60,0)}}
@media(prefers-reduced-motion:reduce){#approach .step-number{animation:none}}

/* Open editorial layout for clear inputs and useful outputs. */
.expectations{background:#fff}
.expectations-heading{margin-bottom:42px}
.expectations-heading .eyebrow{margin-bottom:28px}
.expectations-lede{display:grid;gap:24px}
.expectations-lede h2{max-width:560px;font-size:clamp(2rem,7vw,38px);line-height:1.17}
.expectations-lede p{color:var(--secondary);font-size:18px;line-height:1.55;max-width:620px}
.expectations .deliverables{background:transparent;border:0;border-top:1px solid #e7e5e0;border-radius:0;padding:22px 0 0}
.expectations .deliverables>p:first-child{font-weight:600;color:var(--text)}
.expectations .deliverables ul{display:grid;gap:4px 40px;margin:18px 0 24px}
.expectations .deliverables li{align-items:flex-start;gap:14px;padding:7px 0;font-size:18px;line-height:1.45;color:#413940}
.expectations .deliverables li svg{width:18px;height:22px;stroke-width:2;color:#a32e39;flex:none}
.expectations .deliverables .caption{border-top:1px solid #e7e5e0;padding-top:22px;margin:0;max-width:none}
@media(min-width:768px){.expectations-heading{margin-bottom:48px}.expectations-lede{grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,96px);align-items:center}.expectations-lede h2{font-size:38px}.expectations .deliverables ul{grid-template-columns:1fr 1fr;grid-template-rows:repeat(4,auto);grid-auto-flow:column;column-gap:clamp(40px,6vw,96px);margin:18px 0 28px}}

footer{margin-top:96px;background:linear-gradient(90deg,#8e283b 0%,#7a2639 50%,#461835 100%);color:#fff8ee}
footer .caption{color:rgba(255,248,238,.78)}
footer nav a,footer nav a:visited{color:#fff8ee}
footer nav a:after{background:#fff8ee}
footer .footer-bottom{border-top-color:rgba(255,248,238,.3)}
footer .legal-links button{color:rgba(255,248,238,.82)}
footer .legal-links button:hover{color:#fff8ee}
/* Keep the original footer scale, with a horizontal identity and link row on desktop. */
@media(min-width:768px){
  footer .footer-identity{display:flex;align-items:center;gap:24px}
  footer .footer-identity .brand{flex:none}
  footer .footer-company{margin-top:0}
  footer .footer-top nav{display:flex;flex-wrap:nowrap;align-items:center;gap:clamp(12px,1.5vw,24px)}
  footer .footer-top nav a{white-space:nowrap}
}
@media(min-width:768px) and (max-width:1279px){
  footer .footer-top{flex-direction:column}
}
#faq .faq-layout{display:block}
#faq .section-intro{max-width:none;margin-bottom:40px}
#faq .faq-list{width:100%}

/* Legal notices retain a visible title and close control while the document scrolls. */
#legal-dialog{height:80vh;height:80dvh;max-height:80vh;max-height:80dvh;max-width:min(760px,calc(100vw - 32px));width:calc(100% - 32px);padding:0;overflow:hidden;display:none;flex-direction:column;border:1px solid rgba(122,38,57,.24);box-shadow:0 24px 70px rgba(36,19,24,.24)}
#legal-dialog[open]{display:flex}
#legal-dialog .dialog-header{flex:none;margin:0;padding:20px 24px;border-bottom:1px solid var(--border);background:var(--base)}
#legal-dialog .legal-dialog-content{min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;padding:24px;scrollbar-width:thin;scrollbar-color:#a32e39 #f3e9e8;line-height:1.6}
#legal-dialog .legal-dialog-content::-webkit-scrollbar{width:9px}
#legal-dialog .legal-dialog-content::-webkit-scrollbar-track{background:#f3e9e8;border-radius:9px}
#legal-dialog .legal-dialog-content::-webkit-scrollbar-thumb{background:linear-gradient(#a32e39,#7a2639);border:2px solid #f3e9e8;border-radius:9px}
#legal-dialog .legal-dialog-content:focus-visible{outline:2px solid #a32e39;outline-offset:-3px}
#legal-dialog .legal-dialog-content section+section{margin-top:32px}
#legal-dialog .legal-dialog-content h4{font-size:1.25rem;line-height:1.3;margin:0 0 14px;color:var(--burgundy)}
#legal-dialog .legal-dialog-content h5{font-size:1.06rem;line-height:1.4;margin:24px 0 10px;color:var(--burgundy)}
#legal-dialog .legal-dialog-content p+p,#legal-dialog .legal-dialog-content p+address,#legal-dialog .legal-dialog-content address+p,#legal-dialog .legal-dialog-content ul+p{margin-top:14px}
#legal-dialog .legal-dialog-content ul{padding-left:24px;margin:12px 0 0}
#legal-dialog .legal-dialog-content li+li{margin-top:6px}
#legal-dialog .legal-dialog-content address{font-style:normal;line-height:1.65}
#legal-dialog .legal-dialog-content a{color:#a32e39;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
#legal-dialog .legal-dialog-content .legal-updated{color:var(--secondary);font-size:.875rem;margin-bottom:28px}
@media(max-width:600px){#legal-dialog .dialog-header{padding:16px 20px}#legal-dialog .legal-dialog-content{padding:20px}}

/* Contact frame, supplied envelope artwork, and email focus. */
#contact{position:relative;isolation:isolate;border:0;background:#fff}
#contact:before{content:"";position:absolute;z-index:0;top:-5%;right:-25px;width:clamp(400px,39vw,660px);aspect-ratio:606/536;background:#f3efe6;opacity:.4;-webkit-mask:url('assets/email-shape.svg') center/contain no-repeat;mask:url('assets/email-shape.svg') center/contain no-repeat;pointer-events:none}
#contact .contact-inner{position:relative;z-index:1}
@property --contact-beam{syntax:"<angle>";inherits:false;initial-value:0deg}
#contact .email-pending{max-width:100%;border:2px solid transparent;border-radius:16px;background:linear-gradient(#fff,#fff) padding-box,conic-gradient(from var(--contact-beam),#d9c8c9 0deg,#d9c8c9 210deg,#f5c6ba 267deg,#b83b46 292deg,#d9c8c9 330deg) border-box;color:#7b2a3a;box-shadow:none;font-size:clamp(1.125rem,2.2vw,1.5rem);font-weight:600;line-height:1.25;overflow-wrap:anywhere;animation:contact-beam 5s linear infinite}
#contact .email-pending svg{width:26px;height:26px;stroke-width:2;flex:none;color:#7b2a3a}
#contact .email-pending.is-ready{cursor:pointer}
#contact .email-pending,#contact .email-address{user-select:text;-webkit-user-select:text}
@keyframes contact-beam{to{--contact-beam:360deg}}
@media(max-width:767px){#contact:before{width:340px;right:-170px;top:-5%;opacity:.4}}
@media(prefers-reduced-motion:reduce){#contact .email-pending{animation:none}}

/* Mobile cards use opposite diagonals for the next panel and the open panel. */
@media(max-width:1023px){
  .audience-panel:not(.is-active) .audience-tab:before{content:"↗";transform:none}
  .audience-panel.is-active .audience-tab:before{display:none}
  .audience-panel.is-active .audience-next span{display:block;transform:rotate(180deg)}
}
