/* Contact form: direct submission, delivery feedback and coordinates. */
.contact-page h1{font-size:clamp(43px,4.6vw,65px);line-height:1.06;max-width:520px;margin:0;letter-spacing:-.045em}
.contact-page [hidden]{display:none!important}
.contact-breadcrumb{display:flex;gap:10px;flex-wrap:wrap;padding-block:26px 0;color:var(--muted);font-size:11px}
.contact-breadcrumb a:hover{text-decoration:underline;text-underline-offset:4px}
.contact-layout{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:10%;align-items:start;padding-block:59px 85px}
.contact-intro{min-width:0}
.contact-intro>p{font-size:15px;line-height:1.85;max-width:460px;margin-top:27px}
.contact-method{border-top:1px solid var(--line);padding-top:26px;margin-top:37px}
.contact-method>h2{font-family:var(--sans);font-size:12px;line-height:1.5;font-weight:400;letter-spacing:0;color:var(--muted);margin-bottom:9px}
.contact-email{display:inline-flex;align-items:center;gap:26px;font-size:clamp(19px,2vw,25px);font-weight:500;letter-spacing:-.035em;line-height:1.5;min-height:44px;overflow-wrap:anywhere}
.contact-email>span{font-size:22px;flex-shrink:0}
.contact-email:hover{text-decoration:underline;text-underline-offset:5px}
.contact-booking{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px;margin-top:28px;background:var(--ink);color:white}
.contact-booking>span:first-child{min-width:0}
.contact-booking strong{display:block;font-size:17px;font-weight:500;letter-spacing:-.025em;line-height:1.4}
.contact-booking>span:first-child>span{display:block;color:#c5d0df;font-size:11px;line-height:1.7;margin-top:6px}
.contact-booking>span[aria-hidden]{font-size:25px;flex-shrink:0}
.contact-booking:hover{background:#263a58}
.contact-discover{display:flex;flex-wrap:wrap;gap:4px 25px;margin-top:20px}
.contact-discover>a{display:inline-flex;gap:14px;align-items:center;font-size:11px;min-height:44px}
.contact-discover>a:hover{text-decoration:underline;text-underline-offset:4px}
.contact-discover span{font-size:16px}
.contact-panel{min-width:0;padding:34px;background:var(--wash);border:1px solid #e1e6ed}
.contact-panel h2{font-family:var(--sans);font-size:24px;font-weight:500;line-height:1.3;letter-spacing:-.035em}
.contact-page #contact-form{margin-top:27px}
.contact-panel label{font-size:12px;line-height:1.5;font-weight:500;margin-bottom:22px}
.contact-panel input,.contact-panel textarea,.contact-panel select{font-size:16px;line-height:1.5;min-height:48px;margin-top:8px;border-color:#c7cfdb;padding:12px 13px;background:#fff;width:100%;border-radius:0}
.contact-panel textarea{min-height:156px}
.contact-panel textarea::placeholder,.contact-panel input::placeholder{color:#7d8797;opacity:1}
.contact-panel input:focus,.contact-panel textarea:focus,.contact-panel select:focus{border-color:var(--ink)}
.contact-panel .form-row{gap:20px}
.contact-budget-field{margin-bottom:22px}
.contact-budget-field[hidden]{display:none}
.contact-budget-field label{display:block;margin-bottom:0}
.contact-budget-input{position:relative;margin-top:8px}
.contact-budget-input input{margin-top:0;padding-right:100px}
.contact-budget-input>span{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:13px;line-height:1.5;color:var(--muted);pointer-events:none}
.contact-budget-field>p{font-size:11px;line-height:1.7;color:var(--muted);margin-top:8px}
.contact-delivery-note{font-size:11px;line-height:1.7;color:var(--muted);margin-top:-2px;margin-bottom:18px}
.contact-submit{font-size:12px;min-height:50px;width:100%;justify-content:space-between;padding-inline:20px}
.contact-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.contact-delivery-note a{text-decoration:underline;text-underline-offset:3px}
.contact-submit:disabled{cursor:wait;opacity:.7}
.contact-send-error{margin-top:20px;padding:16px 18px;background:#fff4f1;border:1px solid #e5b7ab;color:#803825;font-size:13px;line-height:1.7}
.contact-success{padding-block:10px 20px}.contact-success-mark{display:flex;align-items:center;justify-content:center;width:46px;height:46px;background:#dcecff;color:#204f82;font-size:24px;margin-bottom:24px;border-radius:50%}
.contact-success>p{font-size:14px;line-height:1.8;margin-top:18px;overflow-wrap:anywhere}.contact-success .contact-reference{font-size:12px;color:var(--muted);margin-top:12px}.contact-success .text-link{margin-top:25px;font-size:13px}
.contact-confirmation{padding-block:65px;max-width:800px}.contact-confirmation h1{margin-top:45px}.contact-confirmation p{margin-block:24px;line-height:1.8}
@media(max-width:1000px){.contact-layout{gap:6%;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.contact-page h1{font-size:clamp(40px,4.8vw,52px)}.contact-panel{padding:27px}.contact-panel .form-row{grid-template-columns:minmax(0,1fr);gap:0}.contact-intro>p{font-size:14px}}
@media(max-width:760px){.contact-layout{grid-template-columns:minmax(0,1fr);gap:35px;padding-block:36px 55px}.contact-page h1{font-size:clamp(42px,7vw,56px);max-width:600px}.contact-intro>p{max-width:580px;margin-top:23px}.contact-method{margin-top:26px;padding-top:20px}.contact-booking{max-width:580px;margin-top:23px}.contact-discover{margin-top:14px}.contact-panel{padding:30px}.contact-panel .form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.contact-breadcrumb{padding-top:20px}.contact-email{font-size:24px}}
@media(max-width:480px){.contact-breadcrumb{font-size:10px}.contact-layout{padding-top:31px;gap:28px}.contact-page h1{font-size:44px}.contact-intro>p{font-size:14px}.contact-email{font-size:23px;gap:20px}.contact-booking{padding:23px}.contact-panel{padding:25px 21px}.contact-panel .form-row{grid-template-columns:minmax(0,1fr);gap:0}.contact-panel input,.contact-panel textarea,.contact-panel select{font-size:16px}.contact-panel label{margin-bottom:20px}.contact-panel h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){.contact-page *{scroll-behavior:auto!important}}

/* Contact coordinates: long email remains readable at narrow widths. */
.contact-email{max-width:100%;gap:16px}.contact-email>.contact-email-address{font-size:inherit;flex:1 1 auto;min-width:0;overflow-wrap:anywhere}.contact-phone-method{margin-top:24px;padding-top:22px}.contact-phone{font-variant-numeric:tabular-nums}
