/* Presentation-only refinement. No content, scripts, routes or form contracts. */
h1,h2{ text-wrap:balance }
p{ text-wrap:pretty }
a,button{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible{outline:2px solid var(--premium-accent);outline-offset:5px}
.form-field input,.form-field select,.form-field textarea{transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;scroll-margin-block:140px 100px}
.form-field:focus-within>label,.form-field:focus-within>span{color:var(--premium-accent)}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--premium-accent);box-shadow:0 0 0 1px var(--premium-accent)}
.form-field input:autofill,.form-field textarea:autofill{border-color:var(--premium-accent)}
.form-status{font-size:14px;line-height:1.7;overflow-wrap:anywhere}
.form-status:not(:empty){padding:14px 16px;border-inline-start:2px solid var(--premium-accent);background:var(--premium-tint);margin-top:16px}
.form-status.is-error{color:#ffb5b5;border-inline-start-color:#ffb5b5}
button[type=submit]:disabled{cursor:progress;opacity:.72}
.button,.form-submit,.menu-toggle,.nav-toggle{transition:color .2s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 .button:active:not(:disabled),.form-submit:active:not(:disabled){transform:translateY(1px)}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}}

:root{--premium-accent:#7bdacf;--premium-tint:rgba(123,218,207,.07)}
.form-field input,.form-field select,.form-field textarea{color-scheme:dark}
.hero-copy>p,.service-hero-copy>p{max-width:58ch}
.image-card{transition:border-color .25s ease,box-shadow .25s ease}
@media(hover:hover){.image-card:hover,.image-card:focus-within{border-color:rgba(123,218,207,.55);box-shadow:0 15px 36px rgba(9,23,43,.16)}}
.studio-inquiry-form .form-status:not(:empty){color:#b6e8e1}
@media(max-width:700px){.studio-inquiry-form{padding:26px 20px}.hero-actions .button,.form-submit{font-size:13px;line-height:1.6}.service-intro p,.legal-content p{overflow-wrap:break-word}}

/* Contrast and keyboard focus on the light Studio sections. */
.section,.legal-page{--premium-accent:#076e6c}
.section .step-no,.section .faq-list a,.legal-page a:not(.arrow-link){color:#076e6c}
