/* Canonical: HXigrlJbkD5XoE2zULLgOS — TOP_PC 1:319 / TOP_SP 4:512. */
@font-face{font-family:Zen;src:url('/assets/final-design/ZenKakuGothicNew-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Zen;src:url('/assets/final-design/ZenKakuGothicNew-Medium.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:Zen;src:url('/assets/final-design/ZenKakuGothicNew-Bold.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:Noto;src:url('/assets/NotoSansJP-VF.ttf') format('truetype');font-weight:100 900;font-display:swap}
:root{--ink:#1d1c1b;--muted:#7b7b7a;--paper:#f8f8f8;--white:#fffefd;--soft:#f2f1f0;--line:#8f8a85;--gutter:clamp(40px,8.333333vw,120px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--paper);color:var(--ink);font:500 14px/24px Zen,sans-serif}
h1,h2,h3,h4,p,dl,dd,ul{margin:0}h1,h2,h3,h4{font-weight:500}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer}img{display:block;max-width:100%;height:auto}button:disabled{cursor:default}[hidden]{display:none!important}
:focus-visible{outline:2px solid var(--ink);outline-offset:5px}section:focus{outline:none}.skip-link{position:fixed;top:8px;left:8px;padding:10px;background:var(--white);z-index:1000;transform:translateY(-160%)}.skip-link:focus{transform:none}
.inner{width:calc(100% - 2 * var(--gutter));max-width:1200px;margin-inline:auto}.section{padding:100px 0}.eyebrow{font-size:18px;line-height:25px;font-weight:700;color:var(--muted)}
.section-heading h2,.section-heading h1{font-size:29px;line-height:51px;margin-top:22px}.mobile-copy{display:none}
.text-motion-line{display:inline-block;max-width:100%}
.site-header{height:55px;padding:0 clamp(32px,5.55556vw,80px);display:flex;align-items:center;justify-content:space-between;border-bottom:.5px solid var(--ink);background:var(--white);position:fixed;top:0;left:0;width:100%;z-index:50}
.logo img,.menu-header img{width:128.467px;height:29px}.desktop-nav{display:flex;gap:48px;align-items:center}.desktop-nav a{font-size:14px;font-weight:700;line-height:16px;letter-spacing:.02em;padding-block:18px}
/* A short RGB-split glitch on text links, not a continuous animation. */
.rgb-glitch-text{position:relative;display:inline-block;max-width:100%;vertical-align:baseline;isolation:isolate}
.rgb-glitch-original{position:relative;display:inline-block;max-width:100%}
.rgb-glitch-channel{position:absolute;inset:0;opacity:0;pointer-events:none;user-select:none;white-space:inherit}
.rgb-glitch-red{color:#ff3867}.rgb-glitch-cyan{color:#00bce3}
@keyframes rgb-glitch-original{0%,11%,19%,35%,44%,67%,100%{transform:translateX(0)}13%{transform:translateX(-1px)}41%{transform:translateX(1.5px)}62%{transform:translateX(-1px)}}
@keyframes rgb-glitch-red{0%,7%,20%,29%,47%,58%,100%{opacity:0;transform:translateX(0);clip-path:inset(0)}8%,13%{opacity:.8;transform:translateX(-2px);clip-path:inset(0 0 48% 0)}16%{opacity:.65;transform:translateX(2px);clip-path:inset(55% 0 16% 0)}33%,40%{opacity:.75;transform:translateX(-2.4px);clip-path:inset(18% 0 38% 0)}51%,55%{opacity:.5;transform:translateX(-1px);clip-path:inset(62% 0 0 0)}}
@keyframes rgb-glitch-cyan{0%,8%,19%,30%,43%,59%,100%{opacity:0;transform:translateX(0);clip-path:inset(0)}9%,15%{opacity:.8;transform:translateX(2px);clip-path:inset(40% 0 0 0)}17%{opacity:.65;transform:translateX(-1.5px);clip-path:inset(6% 0 65% 0)}34%,40%{opacity:.7;transform:translateX(2.6px);clip-path:inset(45% 0 16% 0)}50%,55%{opacity:.5;transform:translateX(1.4px);clip-path:inset(0 0 70% 0)}}
@media(prefers-reduced-motion:no-preference){.rgb-glitch-link:is(:hover,:focus-visible,:active) .rgb-glitch-original{animation:rgb-glitch-original .62s steps(1,end) 1 both}.rgb-glitch-link:is(:hover,:focus-visible,:active) .rgb-glitch-red{animation:rgb-glitch-red .62s steps(1,end) 1 both}.rgb-glitch-link:is(:hover,:focus-visible,:active) .rgb-glitch-cyan{animation:rgb-glitch-cyan .62s steps(1,end) 1 both}}
@media(prefers-reduced-motion:reduce){.rgb-glitch-link:is(:hover,:focus-visible,:active) .rgb-glitch-original{text-decoration:underline;text-underline-offset:5px}}

.menu{display:none}.menu,.menu-close{width:44px;height:44px;padding:11px 7px;border:0;background:transparent;align-items:center;justify-content:center;flex-direction:column;gap:6px}
.menu span,.menu-close span{display:block;width:30px;border-top:1px solid var(--ink)}.menu-close span{border-top-width:1px}
#menu-backdrop{position:fixed;inset:0;background:var(--white);z-index:59}#mobile-menu{position:fixed;inset:0;z-index:60;background:var(--white);overflow:auto}
.menu-header{display:flex;align-items:center;justify-content:space-between;height:60px;padding:0 20px;border-bottom:.5px solid var(--ink)}
.menu-close{display:flex}#mobile-menu nav{padding:40px 20px}#mobile-menu nav a{display:block;font-size:23px;font-weight:700;letter-spacing:.09em;line-height:40px;padding:16px 20px;border-bottom:.5px solid var(--line)}
.hero{height:900px;padding-top:103px;position:relative}.hero-copy{width:calc(100% - 2 * var(--gutter));max-width:1190px;margin:auto}
.hero h1{font-size:clamp(62px,6.944444vw,100px);font-weight:700;line-height:1;white-space:nowrap}.hero-copy>p{display:flex;align-items:center;font-size:40px;line-height:48px;letter-spacing:-.02em;margin-top:20px}.hero-copy>p img{width:41.279px;height:41px}
.hero-graphic{position:relative;margin:43px auto 0;width:calc(100% - 2 * var(--gutter));max-width:1203px}
.hero-frame{height:536px;border:.5px solid var(--ink);overflow:hidden;position:relative;background:#fafafa}
/* Match the desktop painter: 1008 source pixels * .485 / 461.343229 radius. */
#hero-canvas{display:block;width:100%;height:100%;background:#fafafa url('/assets/final-design/hero-sphere-source.svg') center/auto 105.968825% no-repeat}.hero-side{position:absolute;font-size:12px;line-height:12px;white-space:nowrap;color:var(--ink)}.hero-side-left{left:calc(20px - var(--gutter));top:58px;writing-mode:vertical-rl}.hero-side-right{right:calc(20px - var(--gutter));top:64px;writing-mode:vertical-rl;transform:rotate(180deg)}
@media(min-width:768px) and (max-height:600px) and (pointer:coarse) and (not (any-pointer:fine)) and (not (any-hover:hover)){#hero-canvas{background-size:contain}}
.motion-control{position:absolute;right:6px;bottom:6px;width:48px;height:48px;border:0;background:transparent;display:grid;place-items:center;color:var(--muted)}.pause-icon{width:8px;height:12px;border-inline:1px solid currentColor}.play-icon{display:none;width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:8px solid currentColor}
.motion-control[data-paused=true] .pause-icon{display:none}.motion-control[data-paused=true] .play-icon{display:block}
.about-grid{display:grid;grid-template-columns:1fr 621px;gap:40px}.about-body,.intro-body{font-size:18px;line-height:32px}
.values{position:relative;padding:100px 0;background:#000;color:#fff;text-align:center;isolation:isolate}
.site-footer:before{content:"";position:absolute;inset:0;z-index:-1;background-size:cover;background-position:center;filter:grayscale(1)}

.values-ascii-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none;z-index:0}
.values>.inner{position:relative;z-index:1}
.values-overlay-control{z-index:2;color:#dedede;right:12px;bottom:12px}
.values-overlay-control:focus-visible{outline-color:#fff}
.values .eyebrow{color:#e3e3e3}.values-heading{font-size:70px;line-height:126px;font-weight:700}.values-tagline{font-size:29px;line-height:42px}.values-body{font-size:14px;line-height:24px;margin:49px auto 0;max-width:350px}
.service-intro{padding-bottom:70px}.service-intro-grid{display:grid;grid-template-columns:374px 1fr;gap:40px;align-items:start}.intro-body{padding-top:21px}
.service-detail{padding:70px 0}.service-detail-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:100px;align-items:center;grid-template-areas:"title art" "body art";grid-template-rows:auto 1fr}
.service-detail .section-heading{grid-area:title;margin:8.5px 0 40px}
.service-detail .section-heading:after{content:"";display:block;width:62px;border-top:1px solid var(--line);margin-top:24px}
.service-detail .eyebrow{font-size:14px;line-height:22px}.service-detail h3{font-size:23px;line-height:31px;margin-top:8px}.service-text{grid-area:body}.service-body{font-size:14px;line-height:24px;max-width:100%}
.service-art{grid-area:art;aspect-ratio:1;display:grid;place-items:center;background:#f8f7f6;border:.5px solid var(--line);min-width:0;align-self:center}
.digital .service-art img{width:78.6723%;height:auto}.ai .service-art img{width:83.4862%;height:auto}
.digital .service-art picture{display:contents}
/* Source metadata must not create a grid row above the phone's still image. */
@media(max-width:767px),(max-height:600px) and (pointer:coarse) and (not (any-pointer:fine)) and (not (any-hover:hover)){
 .digital .service-art picture>source{display:none}
}
.digital .service-art,.ai .service-art{position:relative;overflow:hidden}.talent-network-canvas,.particle-cube-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none}
.network-motion-ready>img,.network-motion-ready>picture>img,.cube-motion-ready>img{opacity:0}.talent-network-control,.particle-cube-control{z-index:1}
.digital .service-detail-grid{min-height:550px}.ai .service-detail-grid{grid-template-areas:"art title" "art body"}
.ai{padding-bottom:100px}.ai .section-heading{margin-top:0}.ai-lead{font-size:20px;line-height:32px;font-weight:700}.themes{margin-top:40px;background:var(--soft);padding:32px;display:flex;gap:24px;align-items:flex-start;justify-content:space-between}
.themes h3{font-size:14px;line-height:24px;margin:0;white-space:nowrap}.themes p{font-size:12px;line-height:19px;white-space:nowrap}
.implementation{background:var(--soft)}.implementation-art{display:block;margin-top:40px}.implementation-art img{width:100%;height:auto}.implementation-copy{margin-top:40px;display:flex;justify-content:space-between;gap:40px;align-items:start}
.implementation-copy h3{font-size:30px;line-height:39px;letter-spacing:-.01em}.implementation-copy p{font-size:14px;line-height:24px;max-width:406px}
.implementation-motion-frame{position:relative;margin-top:40px}.implementation-motion-frame .implementation-art{margin-top:0}.implementation-motion-ready .implementation-art img{opacity:0}.implementation-motion-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none}
@media(max-width:767px){.implementation-motion-frame{margin-top:16px}}
/* Keep the phone frame separate from the image hidden by the motion renderer. */
.implementation-motion-ready[data-mobile-service-motion="pc"]::after{content:"";position:absolute;inset:0;border:.5px solid var(--ink);pointer-events:none}
.company{padding-bottom:70px}.company-grid{display:grid;grid-template-columns:1fr 649px;gap:40px}.company-row{display:grid;grid-template-columns:168px 1fr;gap:32px;padding:24px 0;border-bottom:.5px solid var(--line);min-height:72.5px}
.company-row dt{font-size:12px;line-height:19px}.company-row dd{font-size:14px;line-height:24px;font-weight:400}
.contact{background:var(--soft)}.contact-grid{display:grid;grid-template-columns:336px 1fr;gap:100px;align-items:start}.contact-intro .section-heading h2{font-size:24px;line-height:42px}.contact-intro>p{font-size:14px;line-height:24px;margin-top:22px}.form-card{background:var(--paper);padding:50px 40px}
.form-heading{margin-bottom:55px}.form-heading:after{content:"";display:block;width:62px;border-top:1px solid var(--line);margin-top:24px}.form-heading .eyebrow{font-size:14px;line-height:22px}.form-heading h3{font-size:23px;line-height:31px;margin-top:8px}
fieldset{border:0;padding:0;margin:0;min-width:0}.category legend,.field>label{font-size:14px;line-height:27px;font-weight:500}.radio-list{display:flex;flex-wrap:wrap;gap:16px;margin-top:12px}
.radio{position:relative;cursor:pointer;min-height:57px;display:flex;align-items:center;justify-content:center;padding:16px;background:var(--paper);border:.5px solid var(--line);font-size:14px;line-height:24px}
.radio input{position:absolute;opacity:0;width:1px;height:1px}.radio:has(input:checked){background:var(--ink);border-color:var(--ink);color:var(--white);font-weight:700}.radio:has(input:focus-visible){outline:2px solid var(--ink);outline-offset:3px}
.fields{display:grid;gap:40px;margin-top:40px}.field{display:flex;flex-direction:column;min-width:0}.field>label{display:block;margin-bottom:12px}
.field input,.field textarea{border:1px solid transparent;border-radius:0;background:var(--soft);padding:16px 24px;width:100%;font-size:14px;font-weight:400;line-height:24px;box-shadow:none}
.field input{height:60px}.field textarea{height:238px;padding:20px 24px;resize:vertical}.field input:focus,.field textarea:focus{outline:1px solid var(--ink);outline-offset:0}.field textarea::placeholder{color:#969696;opacity:1}
.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:var(--ink)}.field-error{font-size:12px;line-height:20px;display:block}.field-error:not(:empty){margin-top:6px}.message-field{margin-top:40px}
.privacy-block{margin-top:40px;scroll-margin-top:85px}.legal-heading{font-size:14px;line-height:24px;margin-bottom:12px}.legal-viewport{max-height:220px;overflow:auto;border:.5px solid var(--line);padding:16px;font-size:12px;line-height:20px}
.legal-clause+.legal-clause{margin-top:20px}.legal-clause h4{font-size:12px;font-weight:700;margin-bottom:8px}.legal-purposes>div{margin-top:12px}.legal-purposes dt{font-weight:700}.legal-purposes dd{margin-top:4px}
#privacy-toggle{display:none}a[href="/privacy-policy/"]{text-underline-offset:3px}.usage-notice{font-size:14px;line-height:24px;font-weight:400;margin-top:24px}.usage-notice a{text-decoration:underline}
.consent-wrap{margin-top:55px}.consent{display:flex;gap:8px;align-items:start;cursor:pointer;font-size:14px;line-height:24px}
.consent input{appearance:none;flex:none;position:relative;width:20px;height:20px;border:.5px solid var(--line);margin:2px 0 0;background:var(--paper);border-radius:0}
.consent input:checked:after{content:"";position:absolute;inset:4px;background:var(--ink)}
.turnstile-block{margin:24px 0;text-align:left;min-width:0}.turnstile-block [hidden]{display:none!important}#turnstile-widget{max-width:100%;min-height:65px}#turnstile-widget iframe{max-width:100%}
#turnstile-status{font-size:14px;line-height:24px;margin-top:8px}#turnstile-status:empty{display:none}#turnstile-retry{border:.5px solid var(--ink);padding:8px 14px;background:transparent;margin-top:10px}
.submit{display:block;width:392px;max-width:100%;height:76px;padding:24px 32px;background:#111010;color:#fff;border:0;font-size:16px;font-weight:500;line-height:28px;margin:24px auto 0}.submit:disabled{background:#676666}
.form-feedback{font-size:14px;line-height:24px;white-space:pre-line}.form-feedback p:not(:empty){margin-top:20px}
.site-footer{position:relative;isolation:isolate;background:#080808;color:#fff;padding:100px 0}.site-footer:before{background-image:linear-gradient(#080808f2,#080808f2),url('/assets/final-design/footer-original.jpg');background-position:center 55%}
.footer-grid{display:grid;grid-template-columns:1fr 399px;grid-template-rows:171px auto;column-gap:40px;row-gap:49px;position:relative}
.footer-brand{grid-column:1;grid-row:1}.footer-brand img{width:283.514px;height:64px}.footer-brand-copy{margin-top:40px}.footer-brand-copy p:first-child{font-size:23px;line-height:40px}.footer-brand-copy p:last-child{font-size:16px;line-height:27px;letter-spacing:.1em;color:var(--muted)}
.privacy-mark{grid-column:2;grid-row:1;justify-self:end;align-self:end;width:68px;height:68px}.privacy-mark img{width:68px;height:68px}
.footer-bottom{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;padding-top:16px;border-top:.5px solid #7b7b7a}.footer-bottom small{font-size:11px;line-height:15px;color:var(--muted)}.footer-policy{display:flex;gap:32px}.footer-policy a{font:400 14px/14px Noto,sans-serif}
.site-footer :focus-visible{outline-color:white}
.policy-document{padding-top:55.5px;padding-bottom:0}.policy-intro{padding-top:100px;padding-bottom:100px}.policy-intro>p{font-size:16px;line-height:27px;margin-top:40px}.policy-intro>h2{font-size:29px;line-height:51px}
.policy-row{display:grid;grid-template-columns:261px 1fr;gap:40px;border-top:.5px solid var(--line);padding-top:40px;padding-bottom:40px}
/* Omit only the first PC rule's paint; retain its box size and all row positions. */
@media(min-width:768px){.policy-row[data-figma-node="2174:61431"]{border-top-color:transparent}}
.policy-row>h2{font-size:16px;line-height:27px;max-width:261px}.policy-content{font-size:14px;line-height:24px;min-width:0;padding-right:32px;font-weight:400}
.policy-row:last-child{padding-bottom:140px}.policy-row[data-figma-node="2174:61514"]{padding-bottom:70px}.policy-content h3{font-size:18px;line-height:27px;font-weight:500}.policy-table-block{margin-top:70px}.policy-table-block h3{margin-bottom:24px}.policy-table-note{margin-top:70px}
.policy-content table{border-collapse:collapse;width:100%;font-size:14px;line-height:24px;table-layout:fixed}.policy-content th,.policy-content td{text-align:left;border-bottom:.5px solid var(--line);vertical-align:top;padding:24px 0;font-weight:400}.policy-content th:first-child{width:201px;padding-right:24px;font-size:12px;line-height:19px}.policy-content thead th{padding-block:8px;background:var(--soft);font-size:14px!important;line-height:24px!important}
.policy-security{margin-top:32px}.policy-security section+section{margin-top:40px}.policy-security h3{font-size:14px;line-height:24px;margin-bottom:16px}
/* Fixed edge copy. The shared scroll update clips white ink to dark sections,
   including when a section boundary passes through a line of text. */
@media(min-width:768px){
.hero-side{position:fixed;top:50%;z-index:30;pointer-events:none;color:transparent;background-image:var(--side-copy-ink,linear-gradient(var(--ink),var(--ink)));background-clip:text;-webkit-background-clip:text;opacity:1;transition:opacity 1.2s ease-in-out 0s;will-change:opacity}
.hero-side[data-edge-hidden="true"]{opacity:0}
.hero-side-left{left:20px;transform:translateY(-50%)}
.hero-side-right{right:20px;transform:translateY(-50%) rotate(180deg)}
html[data-motion-paused="true"] .hero-side{transition:none}
}
@media(min-width:768px) and (max-width:1199px){
.values-heading{font-size:clamp(42px,4.861111vw,58px);line-height:1.8}
.about-grid{grid-template-columns:1fr 55%}.about-body,.intro-body{font-size:18px;line-height:32px}.service-intro-grid{grid-template-columns:30% 1fr}
.service-detail-grid{column-gap:48px}.themes{padding:24px;flex-direction:column;align-items:start;gap:8px}
.company-grid{grid-template-columns:1fr 60%}.company-row{grid-template-columns:32% 1fr;gap:16px}.contact-grid{grid-template-columns:29% 1fr;gap:40px}.form-card{padding:40px 24px}
.footer-grid{grid-template-columns:1fr 45%}.footer-policy{gap:20px}.footer-policy a{font-size:11px}
.policy-row{grid-template-columns:24% 1fr;gap:32px}.policy-content{padding-right:0}.policy-content th:first-child{width:27%}
}
@media(max-width:767px){
:root{--gutter:20px}html{scroll-padding-top:80px}body{font-size:14px;line-height:24px}.pc-copy{display:none}.mobile-copy{display:inline}
.inner{width:calc(100% - 40px)}.section{padding:48px 0}.eyebrow{font-size:14px;line-height:22px}.section-heading h2,.section-heading h1{font-size:24px;line-height:42px;margin-top:16px}
.site-header{height:60px;padding:0 20px}.desktop-nav{display:none}.menu{display:flex}
.hero{height:auto;padding:100px 20px 48px}.hero-copy{width:100%;margin:0}.hero h1{font-size:62px;line-height:62px;white-space:normal}.hero-copy>p{display:flex;align-items:center;font-size:23px;line-height:31px;letter-spacing:0;margin-top:23px}.hero-copy>p img{width:31px;height:30.79px}
.hero-graphic{width:100%;margin-top:27px;display:flex;flex-direction:column;gap:10px}.hero-frame{height:410px;order:2}.hero-side{position:static;font-size:10px;line-height:10px;writing-mode:horizontal-tb;transform:none}.hero-side-left{order:1}.hero-side-right{order:3;text-align:right}
#hero-canvas{background-size:145% auto}
.about-grid,.service-intro-grid,.company-grid,.contact-grid{display:block}.about-body{font-size:14px;line-height:24px;margin-top:28px}
.values{padding:64px 0}.values .eyebrow{font-size:14px;line-height:22px}.values-heading{margin-top:24px;font-size:43px;line-height:47px;position:relative;font-weight:700}.values-heading>.mobile-copy{display:block;margin:0 auto;max-width:350px}
.values-heading>.mobile-copy:before,.values-heading>.mobile-copy:after{content:"";position:absolute;top:-16px;bottom:-60px;width:13.201px;border-top:3px solid white;border-bottom:3px solid white;background-repeat:no-repeat;background-size:3px 19.618px;background-image:linear-gradient(white,white),linear-gradient(white,white)}
.values-heading>.mobile-copy:before{left:0;background-position:left top,left bottom}.values-heading>.mobile-copy:after{right:0;background-position:right top,right bottom}
.values-tagline{font-size:14px;line-height:28px;margin-top:16px}.values-body{margin-top:40px;font-size:14px;line-height:24px}
.service-intro{padding-bottom:32px}.intro-body{font-size:14px;line-height:24px;margin-top:28px;padding-top:0}
.service-detail-grid,.ai .service-detail-grid{display:flex;flex-direction:column;gap:28px;min-height:0;align-items:stretch}
.service-detail .section-heading,.ai .section-heading{margin:0}.service-detail .section-heading:after{display:none}.service-detail .eyebrow{font-size:12px;line-height:19px}.service-detail h3{font-size:18px;line-height:25px;margin-top:8px}.service-art{width:100%;flex:none;aspect-ratio:1}
.digital .service-art img{width:73.1527%}.ai .service-art img{width:77.6289%}.service-body{font-size:14px;line-height:24px}.ai-lead{font-size:20px;line-height:32px}
.themes{margin-top:32px;padding:16px;display:flex;flex-direction:column;gap:16px;text-align:center;align-items:center;justify-content:center;min-height:110px}.themes h3{font-size:14px;line-height:24px;margin:0}.themes p{font-size:12px;line-height:19px}
.implementation-art{margin-top:16px}.implementation-art img{width:100%;height:auto;aspect-ratio:350/288}.implementation-copy{margin-top:28px;display:block}.implementation-copy h3{font-size:23px;line-height:31px;letter-spacing:0}.implementation-copy p{margin-top:16px;font-size:14px;line-height:24px}
.company{padding-bottom:36px}.company-table{margin-top:28px}.company-row{display:block;padding:24px 0;min-height:0}.company-row dt{font-size:12px;line-height:19px}.company-row dd{font-size:14px;line-height:24px;margin-top:16px}
.contact-intro .section-heading h2{font-size:24px;line-height:42px}.contact-intro>p{margin-top:22px;font-size:14px;line-height:24px}.form-card{padding:40px 20px;margin-top:32px}.form-heading{margin-bottom:55px}.form-heading h3{font-size:24px;line-height:42px}
.radio-list{gap:16px;flex-direction:column}.radio{justify-content:flex-start;width:100%}.field input{height:64px}.field input,.field textarea{padding-inline:24px}.field textarea{height:238px}.field>label{margin-bottom:8px}
.privacy-block{margin-top:40px}.legal-heading{margin-bottom:8px}#privacy-toggle{display:inline-block;border:.5px solid var(--line);padding:8px 12px;background:transparent;margin-bottom:12px}.legal-reveal:not(.is-open){display:none}.legal-viewport{max-height:260px;font-size:12px}.usage-notice{margin-top:24px}
.consent-wrap{margin-top:55px}.submit{width:100%;height:76px}.turnstile-block{margin-block:24px}
.site-footer{padding:52px 0 24px}.footer-grid{display:grid;grid-template-columns:1fr 68px;grid-template-rows:auto auto;gap:0}
.footer-brand{grid-column:1/-1;grid-row:1}.footer-brand img{width:265.794px;height:60px}.footer-brand-copy{margin-top:28px}

.footer-bottom{grid-column:1/-1;grid-row:2;display:flex;flex-direction:column-reverse;align-items:stretch;margin-top:36px;padding-top:16px;min-height:139px;gap:40px}
.footer-policy{display:flex;flex-direction:column;gap:24px;padding-block:11px;width:calc(100% - 92px)}.footer-policy a{font-size:11px;line-height:11px}.footer-bottom small{text-align:center;line-height:15px}
.privacy-mark{grid-column:2;grid-row:2;align-self:start;justify-self:end;margin-top:65.5px;position:relative;z-index:1}.site-footer:before{background-position:center}
.policy-document{padding-top:60px}.policy-intro{padding-top:56px;padding-bottom:56px}.policy-intro .eyebrow{font-size:18px;line-height:25px}.policy-intro .section-heading h1{font-size:29px;line-height:51px;margin-top:22px}.policy-intro>p{font-size:16px;line-height:27px;margin-top:40px}.policy-intro>h2{font-size:29px;line-height:51px}
.policy-row{display:block;padding:32px 0}.policy-row>h2{font-size:16px;line-height:27px;max-width:none}.policy-content{font-size:14px;line-height:24px;margin-top:24px;padding:0}.policy-row:last-child{padding-bottom:88px}
.policy-content h3{font-size:18px;line-height:27px}.policy-table-block,.policy-table-note{margin-top:70px}.policy-content table{font-size:14px;line-height:24px}.policy-content th:first-child{width:148px;padding-right:24px;font-size:12px;line-height:19px}.policy-content th,.policy-content td{padding-block:24px}.policy-content thead th{padding-block:8px;font-size:14px!important;line-height:24px!important}
.policy-security{margin-top:32px}.policy-security h3{font-size:14px;line-height:24px}
}
/* Keep the approved 62px heading intact when a scrollbar narrows the 375px viewport. */
@media(min-width:375px) and (max-width:389px){.hero h1{margin-inline:min(0px,calc((100% - 342px)/2))}}
@media(max-width:374px){.hero h1{font-size:calc((100vw - 40px)*.17714);line-height:1}.values-heading{font-size:43px}.values-heading>.mobile-copy:before{left:0}.values-heading>.mobile-copy:after{right:0}.footer-policy{width:calc(100% - 88px)}.policy-content th:first-child{width:31%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-side{transition:none}}
/* Show the HERO copy once, without a visible fallback-to-webfont size jump.
   CSS alone reveals a fixed fallback after 3s even if JavaScript cannot load. */
.hero-copy{visibility:hidden;animation:hero-copy-fallback 0s linear 3s forwards;-webkit-text-size-adjust:100%;text-size-adjust:100%}
@keyframes hero-copy-fallback{to{visibility:visible;font-family:Arial,sans-serif}}
.hero-copy[data-copy-font="ready"]{animation:none;visibility:visible}
.hero-copy[data-copy-font="fallback"]{animation:none;visibility:visible;font-family:Arial,sans-serif}
