@font-face{font-family:DM;src:url('fonts/dm-sans.ttf') format('truetype');font-display:swap}
@font-face{font-family:Fraunces;src:url('fonts/fraunces.ttf') format('truetype');font-display:swap}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6rem}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 DM,Arial,sans-serif}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.08;font-weight:500}h1{font-size:clamp(3rem,6.6vw,6.5rem);letter-spacing:-.055em}h2{font-size:clamp(2.4rem,4vw,4.2rem);letter-spacing:-.04em}h3{font-size:1.55rem;letter-spacing:-.025em}p{max-width:65ch}a{color:inherit;text-underline-offset:.25em}button,input,select,textarea{font:inherit}button,a,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--focus);outline-offset:5px}button{cursor:pointer}img{width:100%;height:auto;display:block}svg{display:block}ul,ol{padding-left:1.2rem}li+li{margin-top:.5rem}::selection{background:var(--accent);color:var(--ink)}.wrap{width:min(1280px,90%);margin-inline:auto}.eyebrow{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700}.muted,.fine{color:var(--muted)}.fine{font-size:.82rem}.section{padding-block:6rem}.section-head{display:flex;justify-content:space-between;gap:3rem;align-items:end;margin-bottom:3rem}.section-head h2{max-width:14ch}.section-head p{max-width:35ch}.stack>*+*{margin-top:1.3rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:2rem;padding:1rem 1.5rem;background:var(--ink);color:var(--paper);border:1px solid var(--ink);text-decoration:none;line-height:1.3;min-height:50px;font-weight:600}.button:hover{filter:brightness(1.15)}.button.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.text-link{display:inline-block;text-decoration:none;border-bottom:1px solid currentColor;padding-block:.35rem}.button span:last-child{margin-left:auto}.actions{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.demo-banner{display:flex;gap:.7rem 2rem;justify-content:center;flex-wrap:wrap;padding:.5rem 5%;background:#172f39;color:#fff;font-size:.74rem;line-height:1.4}.demo-banner a{color:#e5ef91}.skip-link{position:absolute;top:0;left:1rem;z-index:100;transform:translateY(-150%);padding:1rem;background:white;color:black}.skip-link:focus{transform:none}.site-header{min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{font-size:1.6rem;font-weight:600;letter-spacing:-.05em;text-decoration:none;display:flex;align-items:center;gap:.6rem}.brand-mark{width:26px;height:26px}.nav{display:flex;align-items:center;gap:2rem}.nav a{text-decoration:none;font-size:.88rem}.nav a:hover{text-decoration:underline}.menu-toggle{display:none;border:1px solid var(--line);color:var(--ink);background:transparent;padding:.5rem 1rem}.hero{padding-block:3rem 5rem}.hero p{font-size:1.08rem;max-width:40ch}.hero .eyebrow{font-size:.72rem}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:5rem;align-items:center}.hero h1{margin-block:1.5rem}.hero .actions{margin-block:2rem}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.card{padding:2rem;border:1px solid var(--line)}.card h3{margin-block:1rem}.card p{color:var(--muted)}.number{font-size:.8rem;letter-spacing:.12em}.split{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}.faq details{border-top:1px solid var(--line);padding:1.4rem 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{font-size:1.15rem;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:1.5rem}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+'}.faq details[open] summary:after{content:'−'}.faq details p{margin-top:1rem;color:var(--muted);max-width:60ch}.contact{border-top:1px solid var(--line)}.enquiry-form{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.enquiry-form label{font-size:.88rem;display:block}.enquiry-form label span{display:block;margin-bottom:.4rem}.enquiry-form input,.enquiry-form select,.enquiry-form textarea{width:100%;background:var(--field);color:var(--ink);border:1px solid var(--line);border-radius:0;padding:.85rem;min-height:48px}.enquiry-form textarea{min-height:130px;resize:vertical}.full{grid-column:1/-1}.enquiry-form .form-status{padding:1rem;border:1px solid var(--line)}.form-status:empty{display:none}.honey{display:none!important}.enquiry-form button:disabled{cursor:wait;opacity:.65}.contact-note{padding:1rem;border-left:3px solid var(--accent);background:var(--field);font-size:.86rem}.footer{display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap;padding-block:2rem;border-top:1px solid var(--line);font-size:.85rem}.footer nav{display:flex;gap:1.5rem}.soft{background:var(--soft)}.tag{font-size:.73rem;border:1px solid var(--line);padding:.35rem .65rem;display:inline-block}.back-top{white-space:nowrap}.sample-label{font-size:.72rem;letter-spacing:.06em;color:var(--muted);margin-top:.7rem}.privacy-content{max-width:780px;padding:5rem 0}.privacy-content h1{font-size:3rem}.privacy-content h2{font-size:1.7rem;margin-top:2.5rem}.privacy-content p{margin-top:1rem}.privacy-content ul{margin-block:1rem}
.hero-grid>*,.split>*,.three>*,.studio-services>*{min-width:0}
@media(max-width:950px){.hero-grid,.split{gap:2.5rem}.nav{gap:1rem}.three{gap:1rem}.card{padding:1.5rem}.section{padding-block:4.5rem}}
@media(max-width:720px){html{scroll-padding-top:1rem}.wrap{width:90%}.site-header{min-height:80px;gap:1rem;flex-wrap:wrap;padding-block:1.1rem}.site-header>.button{display:none}.nav{width:100%;flex-wrap:wrap;gap:.8rem 1.4rem;padding:.75rem 0}.js .menu-toggle{display:block}.js .nav{display:none}.js .nav.is-open{display:flex}.hero{padding-block:1.8rem 3.5rem}.hero-grid,.split,.three{grid-template-columns:1fr}.hero-grid{gap:3rem}.hero h1{font-size:clamp(3rem,12vw,5rem)}.section{padding-block:3.5rem}.section-head{display:block;margin-bottom:2rem}.section-head p{margin-top:1.5rem}.section-head h2{max-width:18ch}.enquiry-form{grid-template-columns:1fr}.footer{font-size:.78rem}.footer nav{flex-wrap:wrap}.actions{gap:.75rem}.demo-banner{font-size:.68rem;gap:.4rem 1rem}.card{padding:1.5rem}.split{gap:2.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media print{.demo-banner,.site-header,.enquiry-form,.back-top,.menu-toggle{display:none!important}body{background:white!important;color:black!important}section{break-inside:avoid;padding:1.5rem 0!important}.wrap{width:95%}h1{font-size:40pt}h2{font-size:25pt}.hero-grid,.split{gap:1rem}a{color:black}.hero img{max-height:300px;object-fit:cover}.footer{margin-top:2rem}}
