.contact-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:7vw;align-items:start}.contact-copy{position:relative;z-index:2}.contact-form{position:relative;z-index:2;background:#fff;color:#123b3a;padding:44px;border-radius:4px;box-shadow:0 28px 70px rgba(0,70,64,.22)}.contact-form h3{font-family:"Shippori Mincho",serif;font-size:1.8rem;margin-bottom:8px}.form-intro{color:#607775;font-size:.9rem;margin-bottom:30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-field{display:flex;flex-direction:column;gap:7px}.form-field.full{grid-column:1/-1}.form-field label{font-size:.86rem;font-weight:600}.form-field label span{font-size:.7rem;color:#fff;background:#ec167d;padding:2px 6px;margin-left:6px}.form-field label i{font-style:normal;color:#82918f;font-weight:400;margin-left:6px}.form-field input,.form-field select,.form-field textarea{width:100%;font:inherit;color:#123b3a;background:#f7faf8;border:1px solid #c9ded9;border-radius:2px;padding:13px 14px;outline:none;transition:.2s}.form-field textarea{resize:vertical;min-height:145px}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#079c90;box-shadow:0 0 0 3px rgba(7,156,144,.12);background:#fff}.privacy-check{display:flex;align-items:flex-start;gap:10px;font-size:.78rem;color:#607775;margin:22px 0}.privacy-check input{margin-top:7px}.contact-form .button{border:0;width:100%;cursor:pointer;font-size:1rem}.contact-direct{margin-top:18px;text-align:center;font-size:.76rem;color:#71817f}.contact-direct a{color:#079c90;text-decoration:underline}.hp-field{position:absolute!important;left:-9999px!important}.thanks-page{min-height:100svh;display:grid;place-items:center;padding:30px;background:linear-gradient(135deg,#effaf7,#fff)}.thanks-card{width:min(720px,100%);background:#fff;padding:70px clamp(28px,7vw,80px);text-align:center;box-shadow:0 28px 80px rgba(7,100,91,.12)}.thanks-card img{width:150px;margin:0 auto 40px}.thanks-card h1{font-size:clamp(2.4rem,6vw,4.6rem);color:#079c90}.thanks-card p{color:#58706e}.thanks-card .button{margin-top:28px}@media(max-width:900px){.contact-layout{grid-template-columns:1fr;gap:45px}}@media(max-width:560px){.contact-form{padding:30px 22px}.form-grid{grid-template-columns:1fr}.form-field.full{grid-column:auto}.contact h2 br{display:none}}
.thanks-card h1 span,.thanks-card>p:not(.eyebrow) span{display:block;white-space:nowrap}.thanks-card h1{line-height:1.5;letter-spacing:-.045em}.thanks-card>p:not(.eyebrow){line-break:strict;word-break:normal}
@media(max-width:560px){.thanks-page{padding:18px}.thanks-card{padding:52px 18px}.thanks-card h1{font-size:clamp(2rem,10vw,3rem)}.thanks-card>p:not(.eyebrow){font-size:.88rem;line-height:1.9}.thanks-card>p:not(.eyebrow) span{white-space:normal}}

@media(max-width:900px){
  .contact,
  .contact-layout,
  .contact-copy,
  .contact-form,
  .form-grid,
  .form-field{
    min-width:0;
    max-width:100%;
  }
  .contact-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr);
  }
  .contact-title span{
    white-space:normal!important;
    overflow-wrap:anywhere;
  }
  .contact-copy p,
  .contact-form h3,
  .form-intro,
  .privacy-check span{
    max-width:100%;
    overflow-wrap:anywhere;
  }
}

/* Contact balance: generous form width without crowding the message. */
@media(min-width:1101px){
  .contact-layout{
    grid-template-columns:minmax(0,1.1fr) minmax(500px,.9fr);
    gap:clamp(28px,3.2vw,52px);
  }
  .contact-copy{padding-right:clamp(0px,2vw,28px)}
  .contact-form{width:100%}
}
@media(max-width:1100px){
  .contact-layout{grid-template-columns:minmax(0,1fr);gap:45px}
  .contact-form{width:100%}
}
@media(max-width:560px){
  .contact-form{padding:30px 20px}
  .contact-form h3{font-size:1.65rem;line-height:1.45}
  .form-intro br{display:none}
}

.line-contact{text-align:center}.contact-form .line-button{background:#06c755;box-shadow:0 10px 28px rgba(6,199,85,.22)}.contact-form .line-button:hover{box-shadow:0 14px 32px rgba(6,199,85,.3)}.line-contact p{margin:9px 0 0;color:#607775;font-size:.76rem}.contact-divider{display:flex;align-items:center;gap:14px;margin:25px 0;color:#82918f;font-size:.76rem}.contact-divider:before,.contact-divider:after{content:"";height:1px;flex:1;background:#dce8e5}.contact-divider span{white-space:nowrap}
.contact-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:28px 0 0;padding:0;list-style:none}
.contact-flow li{display:flex;align-items:center;gap:9px;padding:12px 10px;border:1px solid rgba(255,255,255,.28);border-radius:4px;color:#fff;font-size:.78rem;line-height:1.45}
.contact-flow b{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:50%;background:#fff;color:#087f76}
.privacy-check a{color:#087f76;text-decoration:underline;text-underline-offset:2px}
.form-status{min-height:1.5em;margin:12px 0 0;color:#526d69;font-size:.82rem;line-height:1.6;text-align:center}
.form-status a{color:#087f76;text-decoration:underline}
.contact-form button:disabled{cursor:wait;opacity:.68}
@media(max-width:560px){.contact-flow{grid-template-columns:1fr}.contact-flow li{font-size:.86rem}}
