.contact-page .ct-hero{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(50px,7.5vw,120px);align-items:center;padding-top:132px;padding-bottom:66px;min-height:min(860px,100svh)}
.ct-hero-copy{padding:20px 0}
.ct-hero h1{font:400 clamp(72px,7.6vw,116px)/.88 var(--serif);letter-spacing:-.045em;margin:32px 0;color:var(--cream)}
.ct-hero h1 em,.ct-enquiry h2 em{font-weight:400;color:var(--gold)}
.ct-lead{font-size:16px;line-height:1.8;color:var(--muted);margin:0 0 30px}
.ct-hero-actions{display:flex;align-items:flex-start;flex-direction:column;gap:24px}
.ct-mail-link{font-size:14px;color:var(--cream);text-underline-offset:6px;text-decoration-color:var(--line);transition:color .2s}
.ct-mail-link:hover{color:var(--gold)}
.ct-hero-signature{font-size:9px;letter-spacing:.22em;color:var(--muted);margin:clamp(38px,5vw,78px) 0 0}
.ct-hero-photo{position:relative;align-self:stretch;margin:0;min-height:590px;overflow:hidden;border-radius:180px 180px 4px 4px;isolation:isolate;background:var(--surface)}
.ct-hero-photo::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(13,17,13,.02) 45%,rgba(13,17,13,.68))}
.ct-hero-photo>img{position:absolute;width:100%;height:110%;top:-5%;left:0;object-fit:cover;object-position:50% 52%;filter:brightness(.82) saturate(.84)}
.ct-hero-photo figcaption{position:absolute;z-index:2;bottom:36px;left:38px;right:38px;display:flex;justify-content:space-between;gap:20px;align-items:flex-end;color:var(--cream)}
.ct-hero-photo figcaption>span:first-child{font-size:9px;letter-spacing:.19em;line-height:1.8;max-width:110px}
.ct-hero-photo figcaption>span:last-child{font:400 35px/.95 var(--serif);text-align:right}
.ct-hero-photo figcaption em{color:var(--gold)}
.ct-photo-mark{position:absolute;z-index:2;top:24px;left:50%;transform:translateX(-50%);display:grid;place-items:center;width:46px;height:46px;border:1px solid rgba(243,238,227,.4);border-radius:50%;font:500 16px var(--serif);color:var(--cream);letter-spacing:-2px}
.contact-page .ct-paths{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;padding-top:14px;padding-bottom:72px}
.ct-path{display:grid;grid-template-columns:auto 1fr auto;gap:18px;padding:26px 0;border-top:1px solid var(--line);text-decoration:none;align-items:start}
.ct-path-number{font-size:10px;color:var(--gold);padding-top:8px}
.ct-path h2{font:400 clamp(22px,2.15vw,31px)/1.13 var(--serif);letter-spacing:-.025em;margin:0 0 8px;color:var(--cream)}
.ct-path p{font-size:11px;line-height:1.65;color:var(--muted);margin:0}
.ct-path-arrow{font-size:23px;line-height:1.2;color:var(--gold);transition:transform .25s ease}
.ct-path:hover .ct-path-arrow{transform:translate(3px,-3px)}
.contact-page .ct-enquiry{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(50px,7.5vw,120px);padding-top:42px;padding-bottom:120px;scroll-margin-top:105px}
.ct-enquiry-copy>.section-heading{font-size:clamp(50px,5vw,76px);line-height:.98;margin:23px 0}
.ct-enquiry-copy>p:not(.eyebrow){max-width:360px;font-size:14px;line-height:1.85;color:var(--muted)}
.ct-faq{margin-top:46px;max-width:400px}
.ct-faq-label{font-size:9px;letter-spacing:.18em;color:var(--gold);margin-bottom:18px}
.ct-faq details{border-bottom:1px solid var(--line)}
.ct-faq summary{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:17px 0;font-size:12px;line-height:1.5;cursor:pointer;list-style:none;color:var(--cream)}
.ct-faq summary::-webkit-details-marker{display:none}
.ct-faq summary>span{font-size:21px;font-weight:300;color:var(--gold);transition:transform .25s}
.ct-faq details[open] summary>span{transform:rotate(45deg)}
.ct-faq details>p{font-size:12px;line-height:1.85;color:var(--muted);margin:0 20px 19px 0}
.ct-faq details a{color:var(--cream);text-underline-offset:3px}
.ct-form{align-self:start;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:clamp(28px,3.2vw,48px)}
.ct-topics{padding:0;margin:0 0 32px;border:0;min-width:0}
.ct-topics legend,.ct-form label{font-size:11px;font-weight:500;color:var(--cream);letter-spacing:.015em}
.ct-topics legend{margin-bottom:15px;padding:0}
.ct-topic-options{display:flex;flex-wrap:wrap;gap:8px}
.ct-topic-options label{position:relative;display:block;cursor:pointer}
.ct-topic-options input{position:absolute;opacity:0;width:1px;height:1px;inset:50%}
.ct-topic-options span{display:block;border:1px solid var(--line);border-radius:30px;padding:10px 13px;font-size:10px;color:var(--muted);font-weight:400;transition:background .2s,color .2s,border-color .2s}
.ct-topic-options input:checked+span{background:var(--gold);border-color:var(--gold);color:var(--bg)}
.ct-topic-options input:focus-visible+span{outline:2px solid var(--cream);outline-offset:3px}
.ct-topic-options label:hover span{border-color:var(--gold)}
.ct-form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:29px}
.ct-form-row label{display:flex;flex-direction:column;gap:10px;min-width:0}
.ct-form input:not([type=radio]),.ct-form textarea{width:100%;border:0;border-bottom:1px solid rgba(220,206,171,.25);border-radius:0;background:transparent;color:var(--cream);font:400 14px/1.5 var(--sans);padding:12px 0;box-sizing:border-box;outline:none;transition:border-color .2s}
.ct-form input:not([type=radio]):focus,.ct-form textarea:focus{border-color:var(--gold)}
.ct-form input::placeholder,.ct-form textarea::placeholder{color:var(--muted);opacity:.6}
.ct-message-label{display:flex;justify-content:space-between;gap:12px}
.ct-character-count{font-size:9px;color:var(--muted);font-weight:400;opacity:.65}
.ct-form textarea{resize:vertical;min-height:140px;max-height:350px;margin-top:10px}
.ct-submit-row{display:flex;flex-direction:column;align-items:flex-start;gap:21px;margin-top:25px}
.ct-submit-row>p{font-size:10px;line-height:1.8;color:var(--muted);margin:0}
.ct-submit-row .button{font-size:11px}
.ct-form-result{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}
.ct-form-result[hidden]{display:none}
.ct-form-result p{font-size:12px;line-height:1.8;color:var(--muted);margin:0 0 12px}
.ct-form-result a{color:var(--cream);overflow-wrap:anywhere}
.ct-copy-message{padding:0;background:transparent;border:0;color:var(--gold);font:400 11px var(--sans);cursor:pointer}
.ct-copy-message span{margin-left:7px}
.ct-copy-status{font-size:10px;color:var(--muted);display:block;margin-top:8px}
.ct-copy-fallback[hidden]{display:none}
.ct-form textarea.ct-copy-fallback{min-height:100px;max-height:200px;font-size:12px}
@media(min-width:1600px){.contact-page .ct-hero{min-height:880px}.ct-hero-photo{min-height:660px}}
@media(max-width:1000px){.contact-page .ct-hero{gap:42px;padding-top:116px;min-height:0}.ct-hero h1{font-size:80px}.ct-hero-photo{min-height:535px;border-radius:140px 140px 4px 4px}.ct-hero-photo figcaption{left:25px;right:25px;bottom:28px}.ct-hero-photo figcaption>span:last-child{font-size:29px}.contact-page .ct-paths{gap:22px}.ct-path{gap:11px}.ct-path h2{font-size:25px}.contact-page .ct-enquiry{gap:40px}.ct-form{padding:28px}.ct-form-row{grid-template-columns:1fr;gap:25px}}
@media(max-width:760px){.contact-page .ct-hero{display:flex;flex-direction:column;gap:28px;padding-top:112px;padding-bottom:33px;align-items:stretch}.ct-hero-copy{padding:0}.ct-hero .eyebrow{margin-top:0}.ct-hero h1{font-size:clamp(68px,18vw,103px);margin:24px 0}.ct-lead{font-size:13px;line-height:1.75;margin-bottom:22px}.ct-hero-actions{flex-direction:row;align-items:center;flex-wrap:wrap;gap:17px 22px}.ct-mail-link{font-size:11px}.ct-hero-signature{display:none}.ct-hero-photo{min-height:0;height:370px;border-radius:120px 120px 5px 5px;align-self:auto}.ct-hero-photo>img{object-position:50% 56%}.ct-hero-photo figcaption{left:24px;right:24px;bottom:26px}.ct-photo-mark{top:22px;width:39px;height:39px;font-size:14px}.contact-page .ct-paths{grid-template-columns:1fr;gap:0;padding-top:0;padding-bottom:40px}.ct-path{padding:22px 0;gap:18px;align-items:center}.ct-path-number{padding-top:0}.ct-path h2{font-size:26px;margin-bottom:5px}.ct-path p{font-size:11px}.ct-path-arrow{font-size:24px}.contact-page .ct-enquiry{grid-template-columns:1fr;gap:34px;padding-top:29px;padding-bottom:70px;scroll-margin-top:92px}.ct-enquiry-copy>.section-heading{font-size:58px;margin:20px 0}.ct-enquiry-copy>p:not(.eyebrow){font-size:13px;max-width:340px}.ct-faq{margin-top:29px;max-width:none}.ct-faq-label{margin-bottom:10px}.ct-faq summary{font-size:12px;padding:16px 0}.ct-form{padding:20px 16px;border-radius:9px;width:100%;max-width:100%;min-width:0;overflow:hidden;box-sizing:border-box}.ct-topics{margin-bottom:26px;min-width:0}.ct-topic-options{max-width:100%}.ct-topic-options span{font-size:10px;padding:10px 12px;max-width:100%}.ct-form-row{grid-template-columns:1fr;gap:16px;margin-bottom:20px;min-width:0}.ct-form-row label,.ct-message-label{width:100%;min-width:0;max-width:100%}.ct-form input:not([type=radio]),.ct-form textarea{font-size:16px;width:100%;max-width:100%;min-width:0;box-sizing:border-box}.ct-form textarea{min-height:145px}.ct-submit-row .button{width:100%;justify-content:space-between}.ct-submit-row>p{font-size:10px}.ct-hero-actions .button{font-size:11px}}
@media(max-width:380px){.ct-hero-photo{height:320px}.ct-hero-actions{gap:17px}.ct-hero h1{font-size:65px}.ct-enquiry-copy>.section-heading{font-size:52px}.ct-form{padding:23px 18px}.ct-topic-options{gap:7px}}
@media(prefers-reduced-motion:reduce){.ct-path-arrow,.ct-faq summary>span,.ct-topic-options span{transition:none}}
