.contact-page [hidden]{display:none!important}

.contact-hero{
padding-block:var(--hero-top) var(--space-8);
background:#FCFCFD;
color:#141830;
--muted:#5B5F78;
--soft:#65697E;
--line:#E1E1EA;
}

.contact-hero-copy{
text-align:center;
min-width:0;
}

.contact-hero-copy>.c-kicker{
margin-inline:auto;
margin-bottom:var(--space-3);
}

.contact-hero-copy>h1{
max-width:24em;
margin-inline:auto;
font-size:var(--text-section);
line-height:var(--lh-heading);
color:#141830;
}

.contact-hero-copy>p{
max-width:46rem;
margin-inline:auto;
margin-top:var(--space-4);
color:#5B5F78;
overflow-wrap:break-word;
}

.contact-hero-copy>.contact-hero-note{
max-width:44rem;
margin-top:var(--space-action);
font-size:var(--text-sm);
color:#5B5F78;
}

.contact-hero-copy .contact-hero-actions{
justify-content:center;
margin-top:var(--space-action);
}

.contact-head{
margin-bottom:var(--space-5);
min-width:0;
}

.contact-head>.c-kicker{
margin-bottom:var(--space-3);
}

.contact-head>p{
max-width:52rem;
margin-top:var(--space-field);
overflow-wrap:break-word;
}

.contact-channel-grid{
display:grid;
grid-template-columns:repeat(3,minmax(0,1fr));
gap:var(--space-4);
align-items:stretch;
}

.contact-channel{
display:flex;
flex-direction:column;
gap:var(--space-3);
height:100%;
min-width:0;
padding:var(--space-5);
}

.contact-channel-heading{
display:grid;
gap:var(--space-field);
min-width:0;
}

.contact-channel-label{
font-size:var(--text-xs);
font-weight:600;
}

.contact-channel h3,
.contact-team-card h3,
.contact-payment-card h3,
.contact-form-note h3,
.contact-preview h3,
.contact-checklist h3{
font-size:var(--text-card);
line-height:1.35;
}

.contact-channel-facts{
display:grid;
gap:var(--space-3);
margin:0;
}

.contact-channel-facts>div{
display:grid;
gap:var(--space-field);
min-width:0;
}

.contact-channel-facts dt{
font-size:var(--text-xs);
font-weight:600;
}

.contact-channel-facts dd{
margin:0;
font-size:var(--text-sm);
overflow-wrap:break-word;
}

.contact-channel>.contact-channel-action,
.contact-team-card>.contact-channel-action{
align-self:flex-start;
margin-top:auto;
}

.contact-channel-note{
margin-top:var(--space-4);
font-size:var(--text-sm);
color:#5B5F78;
}

.contact-channel-note a{
overflow-wrap:anywhere;
text-decoration:underline;
text-underline-offset:3px;
}

.contact-compose-section{
background:#E7E5F6;
color:#1F1C4A;
--muted:#4A4775;
--soft:#4A4775;
--line:#E1E1EA;
}

.contact-compose-section .contact-head>h2{
color:#1F1C4A;
}

.contact-compose-section .contact-head>p{
color:#4A4775;
}

.contact-form{
padding:var(--space-5);
border-radius:var(--r-l);
background:#FFFFFF;
color:#141830;
--muted:#5B5F78;
--soft:#65697E;
--line:#E1E1EA;
--input-line:#9295A8;
min-width:0;
}

.contact-form-grid{
display:grid;
grid-template-columns:repeat(2,minmax(0,1fr));
gap:var(--space-4);
align-items:start;
}

.contact-form-grid>*{
min-width:0;
}

.contact-wide-field{
grid-column:1/-1;
}

.contact-field-label{
font-size:var(--text-sm);
font-weight:600;
line-height:var(--lh-small);
}

.contact-required{
margin-inline-start:var(--space-2);
font-size:var(--text-xs);
font-weight:400;
color:#5B5F78;
}

.contact-options{
display:grid;
grid-template-columns:repeat(4,minmax(0,1fr));
gap:var(--space-field);
align-items:stretch;
}

.contact-choice{
display:flex;
align-items:center;
gap:var(--space-field);
min-width:0;
padding:var(--space-4);
border-radius:var(--r-m);
background:#F4F4F8;
color:#141830;
cursor:pointer;
}

.contact-choice input[type=radio]{
appearance:none;
width:1.125rem;
height:1.125rem;
flex:0 0 auto;
margin:0;
border:1px solid #9295A8;
border-radius:50%;
background:#FFFFFF;
color:#141830;
}

.contact-choice input[type=radio]:checked{
border:5px solid #9E1B24;
}

.contact-choice:has(input:checked){
background:#E7E5F6;
color:#1F1C4A;
box-shadow:inset 0 0 0 1px #9E1B24;
}

.contact-choice:has(input:focus-visible){
outline:2px solid #9E1B24;
outline-offset:3px;
}

.contact-choice span{
min-width:0;
font-size:var(--text-sm);
overflow-wrap:break-word;
}

.contact-form-note{
display:grid;
align-content:start;
gap:var(--space-field);
padding:var(--space-4);
border-radius:var(--r-m);
background:#F4EDD8;
color:#4A3A10;
--muted:#65552D;
--soft:#65552D;
--line:#E1E1EA;
}

.contact-form-note>p{
font-size:var(--text-sm);
color:#4A3A10;
}

.contact-form-actions{
justify-content:flex-start;
margin-top:var(--space-5);
}

.contact-status{
margin-top:var(--space-3);
font-size:var(--text-sm);
color:#5B5F78;
overflow-wrap:break-word;
}

.contact-status.is-error{
color:#9E1B24;
}

.contact-noscript{
margin-top:var(--space-3);
font-size:var(--text-sm);
color:#5B5F78;
}

.contact-preview{
display:grid;
gap:var(--space-4);
margin-top:var(--space-5);
padding:var(--space-4);
border-radius:var(--r-m);
background:#F4F4F8;
color:#141830;
--muted:#5B5F78;
--soft:#65697E;
--line:#E1E1EA;
--input-line:#9295A8;
min-width:0;
}

.contact-preview-heading{
display:grid;
gap:var(--space-field);
min-width:0;
}

.contact-preview-heading>p,
.contact-preview-note{
font-size:var(--text-sm);
color:#5B5F78;
overflow-wrap:break-word;
}

.contact-preview .contact-preview-actions{
justify-content:flex-start;
margin-top:0;
}

.contact-preview textarea{
line-height:var(--lh-body);
}

.contact-checklist{
grid-template-columns:repeat(2,minmax(0,1fr));
align-items:stretch;
gap:var(--space-4);
}

.contact-checklist>li{
padding:var(--space-4);
}

.contact-checklist>li>div{
display:grid;
gap:var(--space-field);
min-width:0;
}

.contact-checklist h3{
font-size:var(--text-base);
}

.contact-checklist p{
font-size:var(--text-sm);
color:#5B5F78;
overflow-wrap:break-word;
}

.contact-team-section{
background:#DFEBF3;
color:#12344A;
--muted:#3A5A70;
--soft:#3A5A70;
--line:#E1E1EA;
}

.contact-team-section .contact-head>h2{
color:#12344A;
}

.contact-team-section .contact-head>p{
color:#3A5A70;
}

.contact-team-grid,
.contact-payment-grid{
display:grid;
grid-template-columns:repeat(2,minmax(0,1fr));
gap:var(--space-4);
align-items:stretch;
}

.contact-team-card,
.contact-payment-card{
display:flex;
flex-direction:column;
gap:var(--space-3);
min-width:0;
height:100%;
padding:var(--space-5);
}

.contact-team-card{
background:#FFFFFF;
color:#141830;
--muted:#5B5F78;
--soft:#65697E;
--line:#E1E1EA;
}

.contact-team-card>p{
color:#5B5F78;
}

.contact-payment-grid{
align-items:start;
}

.contact-payment-card{
height:auto;
}

.contact-end{
padding-bottom:var(--space-close);
}

.contact-closing{
display:grid;
grid-template-columns:minmax(0,1fr) minmax(12rem,.38fr);
align-items:center;
gap:var(--space-6);
padding:var(--space-7);
border-radius:var(--r-l);
background:#141830;
color:#FCFCFD;
--muted:#E7E5F6;
--soft:#E7E5F6;
--line:color-mix(in srgb,#FFFFFF 18%,transparent);
}

.contact-closing-copy{
display:grid;
gap:var(--space-field);
min-width:0;
}

.contact-closing-copy>h2{
font-size:var(--text-section);
line-height:var(--lh-heading);
color:#FCFCFD;
}

.contact-closing-copy>p{
max-width:46rem;
color:#E7E5F6;
}

.contact-closing-actions{
display:flex;
flex-direction:column;
align-items:stretch;
gap:var(--space-3);
min-width:0;
}

.contact-closing-actions>.c-btn--ghost{
background:transparent;
color:#FCFCFD;
box-shadow:inset 0 0 0 1px color-mix(in srgb,#FCFCFD 45%,transparent);
}

.contact-closing-actions>.c-btn--ghost:hover{
background:#53576B;
color:#FFFFFF;
}

.contact-closing-actions>.c-btn--secondary:hover{
background:#E7E5F6;
color:#1F1C4A;
}

@media(max-width:64rem){
.contact-channel-grid{
grid-template-columns:minmax(0,1fr);
}

.contact-options{
grid-template-columns:repeat(2,minmax(0,1fr));
}
}

@media(max-width:42rem){
.contact-hero-copy>h1{
font-size:var(--text-section);
}

.contact-channel,
.contact-form,
.contact-team-card,
.contact-payment-card,
.contact-closing{
padding:var(--space-4);
}

.contact-form-grid,
.contact-checklist,
.contact-team-grid,
.contact-payment-grid,
.contact-closing{
grid-template-columns:minmax(0,1fr);
}

.contact-hero-actions>.c-btn,
.contact-form-actions>.c-btn,
.contact-preview-actions>.c-btn{
width:100%;
}

.contact-closing{
gap:var(--space-5);
}

.contact-preview{
padding:var(--space-4);
}
}
