.utility-page{background:linear-gradient(180deg,#fffaf6 0,#fffdf9 25rem)}
.utility-main{min-height:calc(100vh - 76px)}
.utility-hero{padding:clamp(3.5rem,7vw,6.5rem) 5vw clamp(2.5rem,5vw,4rem);text-align:center;background:radial-gradient(circle at 75% 20%,rgba(205,145,117,.16),transparent 34%),linear-gradient(180deg,#f8eee7,#fffaf6)}
.utility-hero .mini-label{margin-bottom:.65rem}
.utility-hero h1{margin:0;font-family:var(--serif);font-size:clamp(2.1rem,4vw,3.8rem);font-weight:500;letter-spacing:.04em}
.utility-hero p:last-child{max-width:650px;margin:1rem auto 0;color:var(--muted);font-family:var(--serif);font-size:.84rem;line-height:2}
.application-section{max-width:1120px;margin:0 auto;padding:clamp(3rem,6vw,6rem) 5vw;display:grid;grid-template-columns:minmax(240px,.65fr) minmax(0,1.35fr);gap:clamp(2rem,5vw,5rem);align-items:start}
.form-intro{position:sticky;top:100px;padding:2rem;background:#f6eee7;border:1px solid var(--line)}
.form-intro h2{margin:0 0 1rem;font-family:var(--serif);font-size:1.55rem;font-weight:500}
.form-intro p{margin:0;color:var(--muted);font-size:.76rem}
.form-intro dl{margin:1.8rem 0 0;border-top:1px solid rgba(62,56,52,.1)}
.form-intro dl>div{padding:1rem 0;border-bottom:1px solid rgba(62,56,52,.1)}
.form-intro dt{font-family:var(--serif);font-size:.72rem}
.form-intro dd{margin:.15rem 0 0;color:var(--muted);font-size:.75rem}
.application-form{padding:clamp(1.5rem,4vw,3rem);background:#fff;border:1px solid var(--line);box-shadow:0 18px 55px rgba(97,73,58,.06)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem 1.25rem}
.form-field{display:flex;flex-direction:column;gap:.5rem}
.form-field.full{grid-column:1/-1}
.form-field>label,.field-title{font-family:var(--serif);font-size:.78rem;font-weight:500}
.required{margin-left:.5rem;padding:.12rem .42rem;border-radius:99px;background:#d9654a;color:#fff;font-family:var(--sans);font-size:.54rem;font-weight:500;vertical-align:.12rem}
.optional{margin-left:.5rem;color:var(--muted);font-family:var(--sans);font-size:.58rem;font-weight:400}
.form-field input,.form-field select,.form-field textarea{width:100%;min-height:52px;padding:.8rem 1rem;border:1px solid #ded3cb;border-radius:.25rem;background:#fffdfb;color:var(--ink);font:inherit;font-size:.8rem;outline:none;transition:border-color .2s ease,box-shadow .2s ease}
.form-field textarea{min-height:150px;resize:vertical}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--terracotta);box-shadow:0 0 0 3px rgba(182,117,97,.12)}
.form-field small{color:var(--muted);font-size:.62rem}
.check-card{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;border:1px solid var(--line);background:#fbf7f3;cursor:pointer}
.check-card input{width:18px;height:18px;min-height:0;margin:.2rem 0 0;accent-color:var(--terracotta)}
.check-card span{font-family:var(--serif);font-size:.78rem;line-height:1.8}
.privacy-consent{margin:2rem 0 1.5rem;display:flex;align-items:flex-start;justify-content:center;gap:.65rem;color:var(--muted);font-size:.7rem}
.privacy-consent input{width:18px;height:18px;margin:.2rem 0 0;accent-color:var(--terracotta)}
.privacy-consent a{color:var(--terracotta);text-decoration:underline;text-underline-offset:.2em}
.form-submit{display:flex;justify-content:center}
.form-submit .round-button{min-width:min(100%,360px)}
.form-submit .round-button:disabled{opacity:.65;cursor:wait;transform:none}
.phone-contact-card{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:360px}.phone-contact-card h2{margin:.2rem 0 1rem;font-family:var(--serif);font-size:clamp(1.5rem,2.4vw,2.2rem);font-weight:500}.phone-contact-card>p:not(.mini-label){color:var(--muted)}.phone-contact-card .round-button{margin:1rem 0;font-size:1.2rem}.phone-contact-card .phone-note{font-size:.72rem}.phone-contact-card .phone-note a{color:var(--terracotta);text-decoration:underline;text-underline-offset:.2em}
.policy-wrap{max-width:920px;margin:0 auto;padding:clamp(3rem,6vw,6rem) 5vw}
.policy-card{padding:clamp(1.5rem,5vw,4rem);background:#fff;border:1px solid var(--line)}
.policy-card>p{margin:0 0 2rem;color:var(--muted);font-size:.78rem}
.policy-section{padding:1.6rem 0;border-top:1px solid var(--line)}
.policy-section h2{margin:0 0 .75rem;font-family:var(--serif);font-size:1.2rem;font-weight:500}
.policy-section p,.policy-section li{color:var(--muted);font-size:.76rem;line-height:2}
.policy-section ul{margin:.5rem 0 0;padding-left:1.4rem}
.policy-contact{padding:1.5rem;background:#f8f2ed}
.policy-contact p{margin:.2rem 0;color:var(--ink)}
.policy-date{margin-top:2rem!important;text-align:right}
.thanks-wrap{min-height:calc(100vh - 184px);padding:clamp(4rem,10vw,9rem) 5vw;display:grid;place-items:center;background:radial-gradient(circle at 50% 35%,rgba(214,156,131,.18),transparent 34%)}
.thanks-card{max-width:720px;padding:clamp(2.4rem,6vw,5rem);background:#fff;border:1px solid var(--line);box-shadow:0 20px 60px rgba(96,73,58,.08);text-align:center}
.thanks-mark{width:70px;height:70px;margin:0 auto 1.5rem;display:grid;place-items:center;border-radius:50%;background:#f6e7df;color:var(--terracotta);font-family:var(--serif);font-size:2rem}
.thanks-card h1{margin:0;font-family:var(--serif);font-size:clamp(1.7rem,4vw,2.8rem);font-weight:500;line-height:1.6}
.thanks-card>p{margin:1.2rem 0 2rem;color:var(--muted);font-size:.8rem;line-height:2}
.thanks-actions{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}
.text-link{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:.7rem 1.5rem;border:1px solid var(--terracotta);border-radius:99px;color:var(--terracotta);font-family:var(--serif);font-size:.78rem}
@media(max-width:760px){.application-section{grid-template-columns:1fr}.form-intro{position:static}.form-grid{grid-template-columns:1fr}.utility-hero{padding-top:3rem}.policy-card{padding:1.5rem}.site-footer{padding-bottom:2.5rem}}
@media(max-width:420px){.utility-hero h1{font-size:clamp(1.55rem,7vw,1.75rem);letter-spacing:0;white-space:nowrap}.utility-hero p:last-child{font-size:.75rem}}
