/* Reuse the canonical shared reset/components so the shared footer renders identically. */
@import url("_tokens.css");
@import url("_base.css");
@import url("_components.css");

/* Page-scoped scaling contract: 1366 desktop / 375 mobile source artboards. */
html:has(body.contact-fresh){font-size:calc(100vw / 136.6)}
@media (max-width:47.9375em){html:has(body.contact-fresh){font-size:calc(100vw / 37.5)}}

/* Fresh /contact/ implementation. Section 01 only: Figma 201:3908 / 250:8247. */
:where(.contact-fresh){margin:0;color:#333;background:#fff;font-family:"Noto Sans JP",sans-serif}
.contact-header,.contact-header *{box-sizing:border-box}
.contact-header{position:absolute;z-index:10;left:0;top:0;display:flex;width:100%;height:7.5rem;align-items:flex-start;background:rgba(255,255,255,.75)}
.contact-header__brand{position:absolute;left:5rem;top:1.9rem;display:block;width:17rem;height:3.7rem}
.contact-header__brand img{display:block;width:17rem;height:3.7rem}
.contact-header__desktop{position:absolute;right:5rem;top:1.6rem;display:flex;width:83.7rem;height:4.3rem;gap:2.4rem}
.contact-header__nav{display:grid;width:45.7rem;height:4.3rem;grid-template-columns:15.7rem 8.7rem 10.4rem 3.7rem;align-items:center;column-gap:2.4rem}
.contact-header__nav a{display:block;color:#333;text-decoration:none;white-space:nowrap;font-family:"M PLUS 1",sans-serif;font-size:1.6rem;font-weight:700;line-height:2.3168rem;letter-spacing:0.16rem}
.contact-header__actions{display:flex;width:35.6rem;height:4.3rem;gap:1.6rem}
.contact-header__action{display:flex;width:17rem;height:4.3rem;align-items:center;justify-content:center;border:0.05rem solid #000;box-shadow:0.6rem 0.6rem 0 #000;color:#333;text-decoration:none;font-size:1.6rem;font-weight:700;line-height:1.92rem;letter-spacing:0.16rem}
.contact-header__action--consult{background:#f7e730}
.contact-header__action--jobs{background:#fff}
.contact-header__action span{display:block;white-space:nowrap}.contact-header__action--consult span{width:6.9rem}.contact-header__action--jobs span{width:10.4rem}
.contact-header__action i{display:block;width:1.5rem;height:0.1rem;margin-left:1.2rem;background:#333;position:relative}
.contact-header__action i::after{content:"";position:absolute;right:0;bottom:0;width:0.5rem;height:0.5rem;border-right:0.1rem solid #333;transform:skewX(45deg)}
.contact-header__mobile-tools{display:none}
.contact-main,.contact-main *{box-sizing:border-box}
.contact-main{--contact-yellow:#f7e730;--contact-paper:#f3f4f6;--contact-line:#989898;position:relative;isolation:isolate;min-height:156.1rem;overflow:visible;padding:17.5rem 10rem 10rem;background:var(--contact-paper) url("../assets/contact-section-02/noise-pc.png") center top/100% 100% no-repeat;color:#333;font-family:"Noto Sans JP",sans-serif}
.contact-main__background{position:absolute;z-index:-1;left:0;top:0;width:48.55rem;height:58.7rem;background:url("../assets/contact-section-02/background-pc.svg") left top/100% 100% no-repeat;pointer-events:none}
.contact-flow-head{position:relative;width:100%;max-width:116.6rem;margin:0 auto}
.contact-breadcrumb{display:flex;height:2.4rem;align-items:flex-start;gap:1.2rem;font-size:1.6rem;font-weight:500;line-height:2.4rem;letter-spacing:0.08rem}
.contact-breadcrumb a,.contact-breadcrumb span:not([aria-hidden]){color:#333;text-decoration:none;white-space:nowrap}.contact-breadcrumb>span[aria-hidden]{position:relative;width:0.4rem;height:0.9rem;margin:0.75rem 0 0;background:#333;-webkit-mask:url("../assets/shared/chevron-right.svg") center/contain no-repeat;mask:url("../assets/shared/chevron-right.svg") center/contain no-repeat}
.contact-progress{display:flex;width:88rem;height:5.6rem;margin:8rem auto 0;padding:0;align-items:center;list-style:none}
.contact-progress li{display:flex;width:25rem;height:5.6rem;align-items:center;justify-content:center;border:0.1rem solid var(--contact-line);background:#fff;font-size:2.4rem;font-weight:700;line-height:3.84rem;letter-spacing:0.24rem;white-space:nowrap}
.contact-progress li.is-current,.contact-progress li.is-complete{background:var(--contact-yellow)}
.contact-progress li+li{margin-left:6.5rem;position:relative}.contact-progress li+li::before{content:"";position:absolute;right:100%;top:2.7rem;width:6.5rem;height:0.1rem;background:var(--contact-line)}
.contact-form-section{display:grid;width:100%;max-width:116.6rem;margin:8rem auto 0;grid-template-columns:26rem minmax(0,82.6rem);gap:8rem;align-items:start}
.contact-form-title{width:26rem;height:19.5rem;margin:0}.contact-form-title__eyebrow{display:flex;width:10.5rem;height:1.7rem;margin:0 0 2.4rem;align-items:center;gap:0.8rem}.contact-form-title__eyebrow img{display:block;width:2.6rem;height:1.7rem}.contact-form-title__eyebrow span{font-family:"Jost",sans-serif;font-size:2.4rem;font-weight:500;line-height:1.7rem;letter-spacing:0}.contact-form-title h1{margin:0;font-size:4.8rem;font-weight:700;line-height:7.68rem;letter-spacing:0.48rem;white-space:nowrap}.contact-form-title h1 span{display:block}
.contact-panel{display:flex;width:100%;min-width:0;margin:0;padding:5.9rem 3.9rem;flex-direction:column;gap:2.4rem;border:0.1rem solid var(--contact-line);background:#fff}
.contact-honeypot{position:absolute!important;left:-1000rem!important;width:0.1rem!important;height:0.1rem!important;overflow:hidden!important}
.contact-errors{order:-1;border:0.2rem solid #b00020;padding:1.4rem 1.8rem;color:#790000}.contact-errors h2{margin:0 0 0.8rem;font-size:1.6rem}.contact-errors ul{margin:0;padding-left:2.2rem;font-size:1.4rem}.contact-field-error{width:100%;margin:0.7rem 0 0;color:#a40000;font-size:1.4rem;line-height:1.5}
.contact-field{width:100%;height:7.7rem;margin:0}.contact-field:has(>label em){height:7.9rem}.contact-field>label,.contact-field>legend{display:flex;width:max-content;height:1.9rem;margin:0 0 1.6rem;padding:0;align-items:center;border:0;font-size:1.6rem;font-weight:700;font-style:normal;line-height:1.92rem;letter-spacing:0.16rem}.contact-field>label:has(em){height:2.1rem}.contact-field>label em{display:inline-flex;height:2.1rem;margin-left:0.8rem;padding:0.2rem 0.8rem;align-items:center;background:var(--contact-yellow);font-size:1.4rem;font-weight:500;font-style:normal;line-height:1.68rem;letter-spacing:0}
.contact-field--intent{height:11.1rem;border:0;padding:0}.contact-intent-options{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem}.contact-intent{position:relative;display:flex;height:7.6rem;padding:1.5rem 2.3rem;align-items:center;gap:2rem;overflow:hidden;border:0.1rem solid var(--contact-line);background:var(--contact-paper);cursor:pointer}.contact-intent:has(input:checked){background:var(--contact-yellow)}.contact-intent input{position:absolute;width:0.1rem;height:0.1rem;opacity:0}.contact-intent__mark{display:block;width:2rem;height:2rem;flex:0 0 2rem;border:0.1rem solid var(--contact-line);border-radius:50%;background:#fff}.contact-intent input:checked+.contact-intent__mark{border-color:#333;box-shadow:inset 0 0 0 0.4rem #fff;background:#333}.contact-intent strong,.contact-intent small{display:block;font-weight:400;white-space:nowrap}.contact-intent strong{font-size:1.6rem;line-height:1.92rem;letter-spacing:0.048rem}.contact-intent small{margin-top:0.8rem;font-size:1.4rem;line-height:1.68rem;letter-spacing:0.042rem}
.contact-control{display:block;width:100%;height:4.2rem;border:0.1rem solid var(--contact-line);background:var(--contact-paper);overflow:hidden}.contact-control input,.contact-control select,.contact-control textarea{display:block;width:100%;height:100%;margin:0;padding:1rem 2.3rem;border:0;border-radius:0;outline:0;background:transparent;color:#333;font-family:"Noto Sans JP",sans-serif;font-size:1.6rem;font-weight:400;line-height:1.92rem;letter-spacing:0.048rem}.contact-control input::placeholder,.contact-control textarea::placeholder{color:rgba(51,51,51,.5);opacity:1}.contact-control--select{position:relative}.contact-control--select::after{content:"";position:absolute;right:2.5rem;top:1.2rem;width:1.2rem;height:1.2rem;border-right:0.1rem solid #000;border-bottom:0.1rem solid #000;transform:rotate(45deg);pointer-events:none}.contact-control select{padding-right:5.2rem;appearance:none}.contact-field--message{height:23.5rem}.contact-field--message .contact-control{height:20rem}.contact-field--message textarea{padding-top:1rem;resize:vertical;min-height:19.8rem}
.contact-consent{position:relative;display:flex;min-height:2.6rem;align-items:center;flex-wrap:wrap}.contact-consent input{width:1.6rem;height:1.6rem;margin:0 0.8rem 0 0;appearance:none;border:0.1rem solid #333;border-radius:0;background:#fff}.contact-consent input:checked{background:var(--contact-yellow)}.contact-consent input:checked::after{content:"";display:block;width:0.8rem;height:0.4rem;margin:0.3rem 0 0 0.3rem;border-left:0.2rem solid #333;border-bottom:0.2rem solid #333;transform:rotate(-45deg)}.contact-consent label{font-family:"Zen Maru Gothic","Noto Sans JP",sans-serif;font-size:1.6rem;font-weight:500;line-height:2.56rem;letter-spacing:0.08rem}.contact-consent a,.contact-consent a:visited{color:#3a72ff;text-decoration-line:underline;text-decoration-color:currentColor;text-decoration-thickness:.1rem;text-underline-offset:.3rem}.contact-consent a:hover,.contact-consent a:focus-visible{text-decoration-thickness:.2rem}
.contact-submit{position:relative;display:flex;width:100%;height:7.4rem;margin:0;padding:0;align-items:center;justify-content:center;gap:1.2rem;border:0.1rem solid #333;border-radius:0;box-shadow:0.6rem 0.6rem 0 #333;background:#fff;color:#333;font-family:"Noto Sans JP",sans-serif;font-size:2rem;font-weight:700;line-height:2.4rem;letter-spacing:0.2rem;text-decoration:none;cursor:pointer}.contact-submit>span{position:relative;display:block;flex:none;width:2.6rem;height:1.5rem;background:#333;-webkit-mask:url("../assets/shared/arrow-right-barb.svg") center/contain no-repeat;mask:url("../assets/shared/arrow-right-barb.svg") center/contain no-repeat}.contact-submit>span::after{content:none}.contact-submit:disabled{cursor:wait;opacity:.7}
.contact-panel--message{min-height:52rem;justify-content:flex-start}.contact-panel--message h2{margin:0;font-size:2.8rem;line-height:1.5}.contact-panel--message p{margin:0;line-height:1.8}.contact-confirm-list{display:grid;margin:0;gap:1.2rem}.contact-confirm-list div{display:grid;grid-template-columns:16rem 1fr;border-bottom:0.1rem solid #ccc;padding:1.2rem}.contact-confirm-list dt{font-weight:700}.contact-confirm-list dd{margin:0;overflow-wrap:anywhere}.contact-back{align-self:center;color:#333;text-underline-offset:0.4rem}
.contact-fresh :where(input,select,textarea,button,a):focus-visible{outline:0.3rem solid #1677ff;outline-offset:0.3rem}.contact-fresh [aria-invalid="true"]{outline:0.2rem solid #b00020;outline-offset:0.1rem}
@media(max-width:47.9375em){
 .contact-header{height:5.9rem}
 .contact-header__brand{left:1.6rem;top:1.9rem;width:10rem;height:2.1rem}
 .contact-header__brand img{width:10rem;height:2.1rem}
 .contact-header__desktop{display:none}
 .contact-header__mobile-tools{position:absolute;left:13.7rem;top:0.8rem;display:flex;width:22.2rem;height:4.3rem;gap:1.6rem}
 .contact-header__mobile-reserve{display:block;width:17rem;height:4.3rem}
 .contact-header__menu{position:relative;display:block;width:3.6rem;height:3.4rem;margin-top:0.45rem;padding:0;border:0.05rem solid #000;background:#fff;box-shadow:0.4rem 0.4rem 0 #000}
 .contact-header__menu i{position:absolute;left:0.8rem;width:2rem;height:0.1rem;background:#333}
 .contact-header__menu i:nth-child(1){top:1.2rem}.contact-header__menu i:nth-child(2){top:1.7rem}.contact-header__menu i:nth-child(3){top:2.2rem}
 .contact-main{min-height:168rem;padding:11.5rem 1.6rem 8rem;background-image:url("../assets/contact-section-02/noise-sp.png")}
 .contact-main__background{width:100%;height:34.3rem;background-image:url("../assets/contact-section-02/background-sp.svg");background-size:37.8rem 34.3rem}
 .contact-flow-head{max-width:34.3rem}
 .contact-progress{display:flex;width:21.7rem;height:19.8rem;margin:4rem auto 0;flex-direction:column}
 .contact-progress li{width:21.7rem;height:5rem;flex:0 0 5rem;padding:0.8rem 2.4rem;justify-content:flex-start;font-size:2rem;line-height:3.2rem;letter-spacing:0.2rem}
 .contact-progress li+li{margin:2.4rem 0 0}.contact-progress li+li::before{right:auto;left:10.8rem;top:-2.4rem;width:0.1rem;height:2.4rem}
 .contact-form-section{display:flex;max-width:34.3rem;margin-top:4rem;flex-direction:column;gap:4rem}
 .contact-form-title{width:34.3rem;height:7.9rem}.contact-form-title__eyebrow{margin-bottom:2.4rem}.contact-form-title h1{font-size:2.4rem;line-height:3.84rem;letter-spacing:0.24rem}.contact-form-title h1 span{display:inline}
 .contact-panel{padding:3.9rem 1.5rem}
 .contact-field--intent{height:16.9rem}
 .contact-field--intent>legend{margin-bottom:1.6rem}
 .contact-intent-options{grid-template-columns:1fr;gap:0.8rem}
 .contact-intent{height:6.3rem;padding:1.1rem 0.7rem;gap:0.8rem}.contact-intent strong{font-size:1.4rem;line-height:1.68rem;letter-spacing:0.042rem}.contact-intent small{margin-top:0.8rem;font-size:1.2rem;line-height:1.44rem;letter-spacing:0.036rem}
 .contact-field>label,.contact-field>legend{margin-bottom:1.6rem}
 .contact-control input,.contact-control select,.contact-control textarea{padding-left:1.1rem;padding-right:1.1rem}.contact-control select{padding-left:1.1rem;padding-right:4.2rem;font-size:1.4rem;line-height:1.68rem;letter-spacing:0.042rem}.contact-control--select::after{right:1.4rem}
 .contact-field--message textarea{padding-top:1rem}
 .contact-submit{height:7.4rem}
 .contact-confirm-list div{grid-template-columns:1fr;gap:0.5rem}
}
/* Section 03: Figma confirm state 201:3933+3934+3935 / 250:8516. */
.contact-main[data-contact-state="confirm"]{min-height:161.7rem;padding:17.5rem 10rem 10rem}
.contact-main[data-contact-state="confirm"] .contact-flow-head{max-width:none}
.contact-confirm-page-title{width:20.8rem;height:12rem;margin:2.4rem 0 0;font-size:4.8rem;font-weight:700;line-height:7.68rem;letter-spacing:0.48rem;white-space:nowrap}
.contact-confirm-page-title span{display:block}
.contact-main[data-contact-state="confirm"] .contact-progress{margin-top:6.4rem}
.contact-main[data-contact-state="confirm"] .contact-progress li.is-complete{background:var(--contact-paper)}
.contact-main[data-contact-state="confirm"] .contact-progress li.is-current{background:var(--contact-yellow)}
.contact-main[data-contact-state="confirm"] .contact-form-section{display:block;max-width:116.6rem;margin-top:8rem}
.contact-panel--confirm{display:flex;width:100%;min-height:97.4rem;padding:5rem;gap:0;border:0.1rem solid var(--contact-line);background:#fff}
.contact-panel--confirm h2{margin:0;text-align:center;font-size:3.2rem;font-weight:700;line-height:4.8rem;letter-spacing:0.16rem}
.contact-panel--confirm h2 span{display:inline}
.contact-confirm-list{display:flex;margin:8rem 0 0;flex-direction:column;gap:4rem}
.contact-confirm-list div{display:grid;min-height:4.1rem;padding:0 10rem;border:0;border-bottom:0.1rem solid var(--contact-line);grid-template-columns:23.1rem minmax(0,1fr);align-items:start}
.contact-confirm-list dt,.contact-confirm-list dd{margin:0;font-size:1.6rem;font-weight:500;line-height:2.4rem;letter-spacing:0.08rem}
.contact-confirm-list dt{font-weight:700}
.contact-confirm-list dd{overflow-wrap:anywhere;white-space:normal}
.contact-confirm-list [data-confirm-key="message"] dd{white-space:pre-line}
.contact-confirm-list [data-confirm-key="message"]{min-height:18.5rem}
.contact-confirm-actions{display:flex;width:64rem;height:7.4rem;margin:8rem auto 0;gap:4rem}
.contact-confirm-actions form{width:30rem;height:7.4rem;margin:0}
.contact-confirm-button{position:relative;display:flex;width:30rem;height:7.4rem;margin:0;padding:0 4rem;align-items:center;justify-content:center;gap:1.2rem;border:0.1rem solid #333;border-radius:0;box-shadow:0.6rem 0.6rem 0 #333;background:#fff;color:#333;font:700 2rem/2.4rem "Noto Sans JP",sans-serif;letter-spacing:0.2rem;text-decoration:none;white-space:nowrap;cursor:pointer}
.contact-confirm-button--send{background:var(--contact-yellow)}
.contact-confirm-button>span{position:relative;display:block;width:2.6rem;height:1.5rem;flex:0 0 2.59rem;background:#333;order:2;-webkit-mask:url("../assets/shared/arrow-right-barb.svg") center/contain no-repeat;mask:url("../assets/shared/arrow-right-barb.svg") center/contain no-repeat}
.contact-confirm-button>span::after{content:none}
.contact-confirm-button--back>span{order:0;transform:rotate(180deg)}
.contact-confirm-button:disabled{cursor:wait;opacity:.7}
@media(max-width:47.9375em){
 .contact-main[data-contact-state="confirm"]{min-height:162.3rem;padding:11.5rem 1.6rem 8rem}
 .contact-main[data-contact-state="confirm"] .contact-flow-head{max-width:34.3rem}
 .contact-confirm-page-title{width:23.5rem;height:3.8rem;margin-top:1.6rem;font-size:2.4rem;line-height:3.84rem;letter-spacing:0.24rem}
 .contact-confirm-page-title span{display:inline}
 .contact-main[data-contact-state="confirm"] .contact-progress{margin-top:4rem}
 .contact-main[data-contact-state="confirm"] .contact-form-section{max-width:34.3rem;margin-top:4rem}
 .contact-panel--confirm{min-height:107.2rem;padding:3.2rem 1.2rem;gap:0}
 .contact-panel--confirm h2{font-size:2rem;line-height:3rem;letter-spacing:0.1rem}
 .contact-panel--confirm h2 span{display:block}
 .contact-confirm-list{margin-top:4rem;gap:1.6rem}
 .contact-confirm-list div{display:block;min-height:6.2rem;padding:0 1.2rem}
 .contact-confirm-list dt{height:2.4rem;margin-bottom:0.8rem;font-size:1.6rem;line-height:2.4rem;letter-spacing:0.08rem}
 .contact-confirm-list dd{font-size:1.4rem;line-height:2.1rem;letter-spacing:0.07rem}
 .contact-confirm-list [data-confirm-key="email"] dd,.contact-confirm-list [data-confirm-key="phone"] dd{line-height:1.68rem;letter-spacing:0.042rem}
 .contact-confirm-list [data-confirm-key="message"]{min-height:26.4rem}
 .contact-confirm-actions{width:30rem;height:17.2rem;margin-top:8rem;flex-direction:column;gap:2.4rem}
 .contact-confirm-actions form,.contact-confirm-button{width:30rem;height:7.4rem}
}
/* Section 04: Figma thanks state 201:4038+4039+4040 / 250:8724. */
.contact-main[data-contact-state="thanks"]{min-height:104.1rem;padding:17.5rem 10rem 10rem}
.contact-main[data-contact-state="thanks"] .contact-flow-head{max-width:none}
.contact-main[data-contact-state="thanks"] .contact-progress{margin-top:6.4rem}
.contact-main[data-contact-state="thanks"] .contact-progress li.is-complete{background:var(--contact-paper)}
.contact-main[data-contact-state="thanks"] .contact-progress li.is-current{background:var(--contact-yellow)}
.contact-main[data-contact-state="thanks"] .contact-form-section{display:block;max-width:116.6rem;margin-top:8rem}
.contact-panel--thanks{display:flex;width:100%;min-height:54.2rem;padding:5rem;gap:4rem;align-items:center;border:0.1rem solid var(--contact-line);background:#fff}
.contact-thanks-copy{display:flex;width:100%;align-items:center;flex-direction:column}
.contact-thanks-check{display:block;width:12.5rem;height:12.5rem;margin:0 0 4rem}
.contact-thanks-eyebrow{height:1.7rem;margin:0 0 2.4rem;font-family:"Jost",sans-serif;font-size:2.4rem;font-weight:500;line-height:1.7rem;letter-spacing:0}
.contact-panel--thanks h1{margin:0;text-align:center;font-size:3.2rem;font-weight:700;line-height:4.8rem;letter-spacing:0.16rem}
.contact-panel--thanks h1 span{display:inline}
.contact-thanks-message{margin:2.4rem 0 0;text-align:center;font-size:1.6rem;font-weight:500;line-height:2.4rem;letter-spacing:0.16rem}
.contact-thanks-sp-break{display:none}
.contact-thanks-actions{display:flex;width:64rem;height:7.4rem;flex:0 0 7.4rem;gap:4rem}
.contact-thanks-button{position:relative;display:flex;width:30rem;height:7.4rem;padding:0 3.2rem;align-items:center;justify-content:center;gap:1.2rem;border:0.1rem solid #333;box-shadow:0.6rem 0.6rem 0 #333;background:#fff;color:#333;font:700 2rem/2.4rem "Noto Sans JP",sans-serif;letter-spacing:0.2rem;text-decoration:none;white-space:nowrap}
.contact-thanks-button>img{display:block;width:2.6rem;height:1.6rem;flex:0 0 2.6rem;object-fit:contain}
@media(max-width:47.9375em){
 .contact-main[data-contact-state="thanks"]{min-height:123.3rem;padding:11.5rem 1.6rem 8rem}
 .contact-main[data-contact-state="thanks"] .contact-flow-head{max-width:34.3rem}
 .contact-main[data-contact-state="thanks"] .contact-progress{margin-top:4rem}
 .contact-main[data-contact-state="thanks"] .contact-form-section{max-width:34.3rem;margin-top:4rem}
 .contact-panel--thanks{min-height:73.6rem;padding:5rem 1.6rem;gap:4rem}
 .contact-thanks-check{margin-bottom:4rem}
 .contact-panel--thanks h1{font-size:2.4rem;line-height:3.6rem;letter-spacing:0.12rem}
 .contact-panel--thanks h1 span{display:block}
 .contact-thanks-message{width:28rem;text-align:left}
 .contact-thanks-message span{white-space:nowrap}
 .contact-thanks-sp-break{display:inline}
 .contact-thanks-actions{width:30rem;height:17.2rem;flex-basis:17.2rem;flex-direction:column;gap:2.4rem}
 .contact-thanks-button{width:30rem;height:7.4rem}
}
@media(max-width:23.375em){.contact-header__mobile-tools{left:auto;right:1.6rem;width:3.6rem}.contact-header__mobile-reserve{display:none}}
@media(prefers-reduced-motion:reduce){.contact-fresh *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* One-DOM mobile disclosure, owned by interactive-remediation.js. */
@media(max-width:47.9375em){
 .contact-header.is-menu-open .contact-header__desktop{position:absolute;top:5.9rem;right:0;display:block;width:100%;height:auto;padding:2.4rem 1.6rem;background:#fff;border-top:.1rem solid #989898;box-shadow:0 .6rem 1.6rem rgba(0,0,0,.15)}
 .contact-header.is-menu-open .contact-header__nav{display:flex;width:100%;height:auto;flex-direction:column;align-items:stretch;gap:0}
 .contact-header.is-menu-open .contact-header__nav a{padding:1.4rem .8rem;border-bottom:.1rem solid #ddd;font-size:1.6rem;line-height:2.4rem}
 .contact-header.is-menu-open .contact-header__actions{display:none}
}
/* Tablet keeps its one-column flow while the page root follows TOP's 1366-proportional scale. */
@media(min-width:48em) and (max-width:63.9375em){
 .contact-header{height:7.5rem;align-items:center}
 .contact-header__brand{left:3.2rem}
 .contact-header__desktop{right:3.2rem;width:auto;gap:1.6rem}
 .contact-header__nav{display:none}
 .contact-header__actions{width:35.6rem}
 .contact-main,.contact-main[data-contact-state]{min-height:0;overflow:visible;padding:12rem 4rem 8rem}
 .contact-main__background{max-width:63%}
 .contact-flow-head,.contact-main[data-contact-state] .contact-flow-head{max-width:68.8rem}
 .contact-progress,.contact-main[data-contact-state] .contact-progress{width:100%;margin-top:5.6rem}
 .contact-progress li{min-width:0;flex:1 1 0;font-size:1.8rem;letter-spacing:.12rem}
 .contact-progress li+li{margin-left:3.2rem}.contact-progress li+li::before{width:3.2rem}
 .contact-form-section,.contact-main[data-contact-state] .contact-form-section{display:flex;max-width:68.8rem;margin-top:6.4rem;flex-direction:column;gap:3.2rem}
 .contact-form-title{width:auto;height:auto}.contact-form-title h1 span{display:inline}
 .contact-panel--confirm,.contact-panel--thanks{min-height:0;padding:5rem}
 .contact-confirm-list div{padding-inline:4rem}
}
/* Visible custom-control focus follows the real radio input. */
.contact-intent:focus-within{outline:.3rem solid #1677ff;outline-offset:.3rem}
