@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Space+Grotesk:wght@400;500;600;700&display=swap";:root{--bg:#0b0b0b;--surface:#141414;--text:#f7f7f4;--muted:#a5a5a3;--nav-text:#b8b8b6;--line:#303030;--font:"DM Sans",Arial,sans-serif;--display:"Space Grotesk",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{background:var(--bg);color:var(--text);font-family:var(--font);margin:0;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}:is(a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible){outline-offset:5px;outline:2px solid #fff}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);letter-spacing:-.045em;line-height:1.07}h1{font-size:clamp(44px,6.2vw,88px);font-weight:500}h2{font-size:clamp(36px,4.1vw,60px);font-weight:500}h3{font-size:28px;font-weight:500}p{color:var(--muted)}img{max-width:100%;display:block}.header{border-bottom:1px solid var(--line);z-index:30;background:#0b0b0bf5;justify-content:space-between;align-items:center;height:94px;padding:0 5vw;display:flex;position:sticky;top:0}.brand{font-family:var(--display);letter-spacing:-.055em;align-items:center;gap:11px;font-size:25px;font-weight:700;line-height:1;display:flex}.brand img{filter:none;width:39px}.brand span{font-family:var(--font);letter-spacing:.18em;align-self:flex-end;margin-bottom:3px;margin-left:1px;font-size:11px}.nav{align-items:center;gap:32px;font-size:14px;display:flex}.nav>a:not(.button){color:var(--nav-text)}.nav>a:hover{color:#fff}.button{border:1px solid var(--text);background:var(--text);color:#101010;justify-content:center;align-items:center;min-height:52px;padding:13px 23px;font-size:14px;font-weight:600;line-height:1.4;transition:background .2s,color .2s;display:inline-flex}.button:hover{background:#cececa;border-color:#cececa}.button.outline{color:var(--text);background:0 0;border-color:#5c5c5a}.button.outline:hover{background:#282828}.button.small{min-height:42px;padding:10px 22px}.text-link{color:var(--text);background:0 0;border:0;border-bottom:1px solid #696967;padding:3px 0;font-size:14px;display:inline-block}.menu-toggle{display:none}.eyebrow{letter-spacing:.14em;font-size:12px;font-weight:500;line-height:1.7;display:block}.hero{flex-direction:column;min-height:660px;padding:30px 5vw 0;display:flex}.hero-top,.hero-bottom{justify-content:space-between;gap:20px;display:flex}.hero-top{color:#a6a6a3}.hero-body{flex:1;grid-template-columns:1.3fr 1fr;align-items:center;gap:45px;padding:68px 0 72px;display:grid}.hero h1 span{color:#939391}.hero p{margin-top:28px;font-size:18px;line-height:1.6}.hero-actions{align-items:center;gap:30px;margin-top:32px;display:flex}.emblem{justify-content:center;align-items:center;display:flex}.emblem img{filter:none;width:min(100%,410px);animation:1s ease-out reveal}.hero-bottom{letter-spacing:.12em;border-top:1px solid var(--line);color:#999997;padding:24px 0;font-size:11px}.hero-bottom span:first-child{color:#eee}.section{border-bottom:1px solid var(--line);padding:100px 5vw}.section-heading{grid-template-columns:1.3fr 1fr;gap:24px 60px;margin-bottom:44px;display:grid}.section-heading>.eyebrow{color:#999;grid-column:1/-1}.section-heading p{align-self:end;max-width:430px}.package{border:1px solid var(--line);background:#111;grid-template-columns:40px 1.15fr 1fr 170px;align-items:center;gap:25px;margin-top:12px;padding:39px 28px;display:grid}.package.featured{background:#1b1b1b;border-color:#777}.package-id{color:#777;align-self:start;font-size:13px}.package-title .eyebrow{color:#a8a8a5;letter-spacing:.12em;font-size:10px}.package h3{margin:12px 0 16px;font-size:48px}.package-title p{max-width:290px;font-size:15px}.package-details ul,.booking-summary ul{margin:0;padding:0;list-style:none}.package-details li,.booking-summary li{color:#ddd;padding:5px 0;font-size:14px}.package-details li:before,.booking-summary li:before{content:"+";color:#888;margin-right:12px}.terms{max-width:300px;margin-top:14px;font-size:12px;line-height:1.6}.package-price{flex-direction:column;align-items:flex-end;display:flex}.package-price strong{font-family:var(--display);white-space:nowrap;font-size:40px;font-weight:500;line-height:1.2}.package-price>span{color:#999;margin:6px 0 20px;font-size:13px}.package-price .button{width:100%;padding:12px;font-size:13px}.payment-note{text-align:center;margin:24px 0 45px;font-size:13px}.extras{grid-template-columns:1fr 1fr;gap:20px;display:grid}.extra{border:1px solid var(--line);padding:30px;display:block}.extra .eyebrow{color:#999}.extra>div{justify-content:space-between;align-items:center;gap:20px;margin:15px 0;display:flex}.extra h3{font-size:30px}.extra strong{font-size:23px;font-weight:500}.extra small{color:#999;font-size:13px}.extra p{max-width:430px;margin-bottom:20px;font-size:15px}.extra:hover{background:#141414}.studio{background:#111}.gallery{border:1px solid var(--line)}.studio-image{object-fit:cover;object-position:center 53%;width:100%;height:clamp(300px,49vw,650px)}.gallery-bar{justify-content:space-between;align-items:center;gap:15px;padding:18px 24px;font-size:13px;display:flex}.gallery-bar>span:last-child{letter-spacing:.15em;color:#999;font-size:10px}.gallery-bar button{color:#aaa;background:0 0;border:1px solid #333;margin:0 4px;padding:5px 15px}.gallery-bar button.active{color:#000;background:#fff;border-color:#fff}.gear-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.gear img{object-fit:cover;width:100%;height:360px}.gear .eyebrow{color:#999;margin:22px 0 8px}.gear h3{letter-spacing:-.02em;font-size:24px}.gear-more{border-top:1px solid var(--line);letter-spacing:.04em;color:#aaa;justify-content:space-between;gap:25px;margin-top:40px;padding-top:24px;font-size:12px;display:flex}.people-grid{grid-template-columns:1.3fr 1fr;gap:60px;margin-top:40px;display:grid}.people article{margin-bottom:40px}.people h3{margin-bottom:12px}.people .eyebrow{color:#999}.people p{max-width:580px;margin:18px 0}.closing{text-align:center;padding:90px 24px 100px}.closing img{filter:none;width:75px;margin:0 auto 28px}.closing h2{margin-bottom:35px;font-size:clamp(56px,7vw,98px)}footer{border-top:1px solid var(--line);color:#999;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:25px;padding:30px 5vw;font-size:12px;display:flex}footer .brand{color:#eee;font-size:20px}footer .brand span{font-size:9px}.promo,.notice{color:#d1d1cd;background:#191919;border:1px solid #454545;margin:18px 0;padding:18px 22px;font-size:14px}.form-page,.admin-page{max-width:1250px;margin:auto;padding:52px 5vw 85px}.form-page>.eyebrow,.admin-page>.eyebrow{color:#999;margin:25px 0 16px}.back{color:#aaa;border-bottom:1px solid #555;font-size:13px}.form-page h1,.admin-page h1{font-size:clamp(44px,5vw,66px)}.intro{margin-top:20px;font-size:17px}.booking-layout{grid-template-columns:1.3fr 1fr;align-items:start;gap:70px;margin-top:55px;display:grid}fieldset{border:0;border-bottom:1px solid var(--line);min-width:0;margin:0 0 32px;padding:0 0 32px}legend{font-family:var(--display);margin-bottom:25px;padding:0;font-size:22px}legend span{color:#888;vertical-align:middle;margin-right:13px;font-size:12px}label{margin-bottom:20px;font-size:14px;display:block}input:not([type=checkbox]),select,textarea{color:#f6f6f3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#141414;border:1px solid #454545;border-radius:0;width:100%;max-width:100%;min-height:48px;margin-top:9px;padding:12px 14px;display:block}textarea{resize:vertical}.field-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.service-choices{grid-template-columns:1fr 1fr;gap:10px;display:grid}.service-choices button{color:#eee;background:0 0;border:1px solid #444;justify-content:space-between;align-items:center;gap:12px;padding:17px 14px;font-size:14px;display:flex}.service-choices button span{color:#999;font-size:13px}.service-choices button.selected,.slot-buttons button.selected{color:#111;background:#f2f2ef;border-color:#fff}.service-choices button.selected span{color:#333}.hint{margin:12px 0 20px;font-size:13px;line-height:1.65}.booking-summary{background:#151515;border:1px solid #555;padding:32px;position:sticky;top:120px}.booking-summary h2{margin:16px 0 20px;font-size:44px}.summary-price{font-size:40px;font-family:var(--display);font-weight:500}.summary-price small{font-size:15px;font-family:var(--font);color:#aaa}.booking-summary ul{margin:20px 0 24px}.booking-summary>p{margin:20px 0}.summary-bottom{border-top:1px solid var(--line);letter-spacing:.08em;color:#aaa;align-items:center;gap:20px;margin-top:28px;padding-top:26px;font-size:11px;display:flex}.summary-bottom img{filter:none;width:50px}.slot-buttons{flex-wrap:wrap;gap:9px;margin-bottom:25px;display:flex}.slot-buttons button{color:#fff;background:#151515;border:1px solid #555;padding:10px 17px;font-size:14px}.checkbox{color:#aaa;align-items:flex-start;gap:13px;font-size:13px;display:flex}.checkbox input{accent-color:#fff;flex-shrink:0;width:18px;height:18px;margin-top:6px}.checkbox a{text-decoration:underline}.full{width:100%}.honeypot{position:absolute;left:-9999px}.error{color:#ffcece;background:#291919;border:1px solid #bd7373;margin:20px 0;padding:16px;font-size:14px}.privacy{border-top:1px solid var(--line);margin-top:50px;padding-top:25px;font-size:13px}.privacy summary{cursor:pointer;font-size:14px}.privacy p{max-width:800px;margin-top:18px}.status-page{text-align:center;max-width:900px;min-height:75vh;margin:auto;padding:70px 5vw 100px}.status-logo{filter:none;width:80px;margin:0 auto 32px}.status-page h1{margin:25px 0;font-size:clamp(38px,5vw,62px)}.status-badge{border:1px solid #888;padding:8px 17px;font-size:14px;display:inline-block}.status-card{background:#141414;border:1px solid #444;margin:35px 0;padding:32px}.status-card h2{font-size:36px}.status-card p{margin:16px 0}.status-page>.button{margin:24px 20px}.status-card code{overflow-wrap:anywhere;font-size:16px;display:block}.admin-stats{grid-template-columns:repeat(3,1fr);gap:20px;margin:35px 0;display:grid}.admin-stats>div{border:1px solid #444;flex-direction:column;padding:24px;display:flex}.admin-stats strong{font-size:36px;font-weight:500}.admin-stats span{color:#aaa;font-size:13px}.admin-tabs{border-bottom:1px solid #444;gap:25px;margin-bottom:32px;display:flex;overflow-x:auto}.admin-tabs button{color:#aaa;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;padding:14px 0;font-size:14px}.admin-tabs button.active{color:#fff;border-color:#fff}.admin-toolbar{justify-content:space-between;align-items:center;margin-bottom:25px;display:flex}.admin-toolbar select{width:auto;margin:0}.request-card{border:1px solid #444;margin:16px 0;padding:28px}.request-heading{justify-content:space-between;align-items:center;gap:25px;display:flex}.request-heading h3{margin:12px 0}.request-heading>strong{font-size:24px;font-weight:500}.request-heading .eyebrow{color:#aaa}.contact-row{overflow-wrap:anywhere;flex-wrap:wrap;gap:20px;margin:14px 0;font-size:14px;display:flex}.request-notes{white-space:pre-wrap;background:#181818;padding:15px;font-size:14px}.request-actions{flex-wrap:wrap;align-items:center;gap:20px;margin:20px 0;display:flex}.request-actions label{margin:0}.request-actions input{width:155px}.window-form{grid-template-columns:1.2fr 1fr 1fr 1.2fr;gap:18px;margin:35px 0;display:grid}.window-form .button{align-self:end}.window-row{border-bottom:1px solid #333;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;font-size:14px;display:flex}.empty-state{text-align:center;padding:65px 20px}.empty-state img{filter:none;opacity:.6;width:70px;margin:0 auto 25px}.empty-state h2{font-size:30px}.empty-state p{margin:18px 0}.admin-empty{border:1px solid #444;margin-top:30px;padding:35px}.admin-empty h2{font-size:30px}.admin-empty p{margin:20px 0}.admin-page form>h2{margin-bottom:25px;font-size:30px}.settings-heading{margin-top:55px}.admin-page form>h3{margin:25px 0}.work-editor{border:1px solid #444;margin:20px 0;padding:20px}.admin-page .notice{margin-bottom:30px}@keyframes reveal{0%{opacity:0;transform:rotate(-8deg)scale(.95)}to{opacity:1;transform:rotate(0)scale(1)}}@media (min-width:1600px){main>.section,main>.hero{padding-left:calc(50vw - 720px);padding-right:calc(50vw - 720px)}}@media (max-width:1000px){.nav,.hero-body{gap:20px}.hero{min-height:580px}.package{grid-template-columns:25px 1fr 1fr;gap:20px}.package-price{grid-area:1/3;align-self:start}.package-details{grid-column:2/4;align-items:start;gap:35px;display:flex}.package-title{padding-right:10px}.gear img{height:290px}.booking-layout{gap:30px}.booking-summary{padding:23px}.window-form{grid-template-columns:1fr 1fr}}@media (max-width:700px){.header{height:76px;padding:0 6vw}.brand{font-size:22px}.brand img{width:31px}.brand span{font-size:9px}.menu-toggle{color:#fff;background:0 0;border:0;font-size:14px;display:block}.nav{background:#101010;border-bottom:1px solid #555;align-items:stretch;gap:24px;padding:25px 6vw;display:none;position:absolute;top:76px;left:0;right:0}.nav.open{flex-direction:column;display:flex}.hero{min-height:0;padding:24px 6vw 0}.hero-top .eyebrow{font-size:10px}.hero-body{grid-template-columns:1fr;gap:34px;padding:38px 0 40px}.hero h1{font-size:clamp(43px,11.6vw,76px)}.hero p{margin-top:22px;font-size:16px}.hero-actions{flex-wrap:wrap;gap:20px;margin-top:25px}.hero .button{padding:13px 20px;font-size:13px}.emblem img{width:190px}.emblem{justify-content:flex-end;margin-top:-15px}.hero-bottom{padding:20px 0;font-size:9px}.hero-bottom>span:nth-child(2){display:none}.section{padding:65px 6vw}.section-heading{grid-template-columns:1fr;gap:20px;margin-bottom:32px}.section-heading p{font-size:15px}.package{grid-template-columns:1fr 105px;gap:18px;padding:25px 20px}.package-id{display:none}.package-title{grid-area:1/1}.package-title .eyebrow{letter-spacing:.07em;font-size:9px}.package h3{margin:12px 0;font-size:37px}.package-title p{font-size:14px}.package-price{grid-area:1/2;align-self:center}.package-price strong{font-size:30px}.package-price>span{margin:4px 0 16px;font-size:11px}.package-price .button{min-height:44px;padding:10px 8px;font-size:12px}.package-details{border-top:1px solid #333;grid-column:1/-1;padding-top:15px;display:block}.terms{max-width:none}.payment-note{text-align:left;margin-bottom:30px;font-size:12px}.extras{grid-template-columns:1fr;gap:14px}.extra{padding:24px}.extra h3{font-size:27px}.gear-grid{grid-template-columns:1fr;gap:38px}.gear img{object-position:center 40%;height:380px}.gear h3{font-size:25px}.gear .eyebrow{margin-top:16px}.gear-more{flex-direction:column;gap:13px;font-size:11px}.people-grid{grid-template-columns:1fr;gap:35px;margin-top:25px}.people article:last-child{margin-bottom:0}.gallery-bar{padding:14px;font-size:12px}.gallery-bar>span:last-child{display:none}.studio-image{height:410px}.closing{padding:65px 20px}.closing h2{font-size:60px}footer{grid-template-columns:1fr 1fr;gap:23px;padding:28px 6vw;display:grid}footer .brand{grid-column:1/-1}footer p{font-size:11px}.form-page,.admin-page{padding:30px 6vw 65px}.form-page h1,.admin-page h1{font-size:44px}.booking-layout{flex-direction:column-reverse;gap:35px;margin-top:30px;display:flex}.booking-summary{width:100%;padding:24px;position:static}.booking-summary h2{margin:12px 0;font-size:32px}.booking-summary ul{margin:15px 0}.summary-price{font-size:32px}.summary-bottom{display:none}.booking-layout>form{width:100%}.field-grid{grid-template-columns:1fr;gap:0}.service-choices button{padding:15px 10px;font-size:13px}.service-choices button span{font-size:12px}legend{font-size:20px}.intro{font-size:15px}.admin-stats{gap:8px}.admin-stats>div{padding:14px 10px}.admin-stats strong{font-size:29px}.admin-stats span{font-size:11px}.request-card{padding:20px}.request-heading h3{font-size:24px}.request-heading .eyebrow{font-size:10px}.request-actions{gap:15px}.window-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.window-form{gap:10px}.window-form label{font-size:12px}.window-form input,.window-form select{padding:10px 8px}.admin-tabs{gap:20px}.admin-tabs button{font-size:13px}.status-page{padding:45px 6vw 65px}.status-card{padding:24px}.status-page h1{font-size:41px}.status-page>.button{margin:22px 10px}.status-page p{font-size:15px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}.header-brand{white-space:nowrap;font-family:var(--display);letter-spacing:-.025em;align-items:center;gap:10px;font-size:25px;font-weight:600;line-height:1.2;display:flex}.header-brand img{width:39px}.brand-name,.brand-name .brand-muted{font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;letter-spacing:inherit;display:inline}.brand-name{color:#fff}.brand-name .brand-muted{color:var(--nav-text)}main .studio-heading{letter-spacing:-.045em;font-family:Space Grotesk,Arial,sans-serif;font-style:normal;font-weight:500;line-height:1.07}@media (max-width:700px){.header-brand{gap:8px;font-size:22px}.header-brand img{width:31px}}.form-page input[type=date],.form-page input[type=time]{font-family:var(--font)}.form-page input::-webkit-datetime-edit{font-family:var(--font)}.service-choices button{text-align:left;flex-wrap:wrap}.package-title{min-width:0}@media (max-width:700px){.package h3{font-size:clamp(27px,7vw,37px)}.hero-bottom>span:nth-child(2){display:block}}.slot-label{color:var(--text);margin-bottom:12px;font-size:14px}.booking-slots .slot-buttons{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.booking-slots .slot-buttons button{white-space:nowrap;min-height:48px;padding:12px 8px}.request-review{border:1px solid var(--line);margin-bottom:28px;padding:24px}.request-review h2{margin-bottom:18px;font-size:24px}.request-review p{margin-top:10px}.request-review strong,.review-price{color:var(--text)}.review-price{font-size:22px}.request-notes{overflow-wrap:anywhere}.monthly-entry{border-top:1px solid var(--line);margin-top:20px;padding-top:20px}.monthly-entry h4{margin:0 0 18px}.booking-layout>form,.booking-summary{min-width:0}.service-choices strong{overflow-wrap:anywhere}.error{color:#f7f7f4;background:#191919;border-color:#888}@media (max-width:700px){.booking-layout{flex-direction:column}.request-review{padding:20px}.booking-summary{position:static}.summary-price,.window-row{overflow-wrap:anywhere}}.booking-slots .slot-buttons button:disabled{cursor:not-allowed;opacity:.4}.booking-slots .slot-buttons button small{margin-top:4px;font-size:11px;display:block}.admin-page .day-block-form{grid-template-columns:minmax(0,1fr) auto;align-items:end}.admin-page .day-block-form label{margin:0}.admin-page .day-block-form input{box-sizing:border-box;min-height:48px;margin-bottom:0}.admin-page .day-block-form .button{align-self:end;min-height:48px;margin:0}.calendar-help{margin-top:20px}.calendar-help summary{cursor:pointer}.calendar-help p{line-height:1.6}@media (max-width:480px){.admin-page .day-block-form{grid-template-columns:1fr}.admin-page .day-block-form .button{width:100%}}@media (max-width:700px){.admin-page .window-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:18px 12px}.admin-page .window-form label{min-width:0;margin:0;font-size:14px}.admin-page .window-form input,.admin-page .window-form select{width:100%;min-width:0;max-width:100%;height:52px;padding:12px 10px;font-size:16px;line-height:1.25}.admin-page .window-form input[type=date],.admin-page .window-form input[type=time]{-webkit-appearance:none;appearance:none;text-align:left}.admin-page .window-form input::-webkit-date-and-time-value{text-align:left;min-height:1.25em}.admin-page .window-form input::-webkit-datetime-edit{min-width:0;padding:0}.admin-page .availability-date,.admin-page .availability-kind,.admin-page .window-form>.button{grid-column:1/-1}.admin-page .window-form>.button{white-space:normal;width:100%;min-height:52px;margin:2px 0 0}.admin-page .day-block-form{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr);padding-top:28px}.admin-page .notice .request-actions{flex-direction:column;align-items:stretch;gap:14px}.admin-page .notice .request-actions>.button{white-space:normal;width:100%}.admin-page .notice .request-actions>.text-link{text-align:left;align-self:flex-start}.form-page .booking-layout input.booking-date-input{-webkit-appearance:none;appearance:none;text-align:center;width:calc(50% - 5px);min-width:0;max-width:100%;margin-left:auto;margin-right:auto;padding-left:8px;padding-right:8px}.form-page .booking-layout input.booking-date-input::-webkit-date-and-time-value{text-align:center}.form-page .booking-layout input.booking-date-input::-webkit-datetime-edit{min-width:0;padding:0}}.mobile-package-summary{display:none}@media (max-width:700px){.booking-layout>.booking-summary{display:none}.mobile-package-summary{border:1px solid var(--line);background:var(--surface);min-width:0;margin:0 0 32px;padding:20px;display:block}.mobile-package-summary>.eyebrow{color:var(--muted);font-size:10px}.mobile-package-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;margin:10px 0 14px;display:flex}.mobile-package-heading h2{letter-spacing:-.035em;font-size:26px}.mobile-package-heading strong{white-space:nowrap;font-size:22px;font-weight:500}.mobile-package-heading small{color:var(--muted);font-size:13px}.mobile-package-summary ul{margin:0;padding:0;list-style:none}.mobile-package-summary li{color:#ddd;padding:4px 0;font-size:14px;line-height:1.5}.mobile-package-summary li:before{content:"+";color:#888;margin-right:10px}.mobile-package-summary details{border-top:1px solid var(--line);margin-top:16px;padding-top:12px;font-size:13px}.mobile-package-summary summary{cursor:pointer;color:var(--text);padding:4px 0}.mobile-package-summary details p{margin-top:12px;line-height:1.6}}.portfolio{overflow:hidden}.portfolio-toolbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;display:flex}.portfolio-toolbar>span{letter-spacing:.12em;color:var(--muted);font-size:11px}.portfolio-toolbar>div{gap:8px;display:flex}.portfolio-toolbar button{border:1px solid var(--line);width:44px;height:44px;color:var(--text);background:0 0;font-size:20px}.portfolio-toolbar button:hover{background:var(--surface);border-color:#999}.portfolio-rail{scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#555 #161616;overscroll-behavior-x:contain;grid-auto-columns:calc(33.3333% - 16px);grid-auto-flow:column;gap:24px;padding:6px 0 22px;display:grid;overflow-x:auto}.portfolio-card{scroll-snap-align:start;min-width:0}.portfolio-cover{border:1px solid var(--line);background:#111;display:block}.portfolio-cover img{aspect-ratio:1;object-fit:contain;width:100%;height:auto}.portfolio-cover>span{border-top:1px solid var(--line);color:var(--muted);padding:13px 15px;font-size:12px;display:block}.portfolio-cover:hover>span{color:#fff}.portfolio-meta{padding-top:20px}.portfolio-meta .eyebrow{font-size:11px}.portfolio-meta .eyebrow>span{color:var(--muted)}.portfolio-meta h3{overflow-wrap:anywhere;margin:10px 0 12px;font-size:24px;line-height:1.2}.portfolio-meta p{max-width:38ch;font-size:13px;line-height:1.65}@media (min-width:701px) and (max-width:1000px){.portfolio-rail{grid-auto-columns:calc(50% - 12px)}}@media (max-width:700px){.portfolio-rail{grid-auto-columns:85%;margin-right:-6vw;padding-right:6vw}.portfolio-meta h3{font-size:23px}.portfolio-toolbar{margin-bottom:14px}.portfolio .section-heading{margin-bottom:24px}}.portfolio-toolbar{justify-content:flex-end}.works-admin h2{font-size:30px}.works-admin .admin-toolbar{flex-wrap:wrap;gap:20px}.works-admin .work-editor{scroll-margin-top:110px}.works-admin .work-editor>h3{margin-bottom:24px;font-size:25px}.work-upload{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.work-upload img{object-fit:contain;background:#111;width:140px;height:140px}.work-upload label{flex:1;min-width:180px}.work-upload input{max-width:100%;font-size:13px}.works-admin .hint{display:block}.admin-work-row{border-top:1px solid var(--line);grid-template-columns:100px minmax(0,1fr);gap:24px;padding:24px 0;display:grid}.admin-work-row>img{object-fit:contain;width:100px;height:100px}.admin-work-row h3{margin:8px 0;font-size:23px}.admin-work-row p{font-size:13px}.admin-work-row .eyebrow{font-size:10px}@media (max-width:700px){.admin-work-row{grid-template-columns:72px minmax(0,1fr);gap:16px}.admin-work-row>img{width:72px;height:72px}.admin-work-row h3{font-size:20px}.works-admin .work-editor{padding:18px}.work-upload{gap:12px}.work-upload label{flex-basis:100%;min-width:0}.admin-page .approval-with-field{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:16px;min-width:0;max-width:100%;display:grid}.admin-page .approval-with-field>label{white-space:normal;overflow-wrap:anywhere;min-width:0;margin:0;line-height:1.5;display:block}.admin-page .approval-with-field>label>span{white-space:normal;overflow-wrap:anywhere;line-height:1.5;display:block}.admin-page .approval-with-field>label>input{-webkit-appearance:none;appearance:none;text-align:left;width:100%;min-width:0;max-width:100%;height:52px;margin:8px 0 0;padding:12px 10px;font-size:16px;line-height:1.25}.admin-page .approval-with-field>label>input::-webkit-date-and-time-value{text-align:left;min-height:1.25em}.admin-page .approval-with-field>label>input::-webkit-datetime-edit{min-width:0;padding:0}.admin-page .approval-with-field>.button{white-space:normal;overflow-wrap:anywhere;width:100%;min-width:0;max-width:100%;height:auto;min-height:52px;margin:0;padding:13px 16px;line-height:1.4}.admin-page .monthly-entry,.admin-page .monthly-entry .field-grid,.admin-page .monthly-entry label{min-width:0;max-width:100%}.admin-page .monthly-entry label{white-space:normal;overflow-wrap:anywhere;line-height:1.5}.admin-page .monthly-entry input{width:100%;min-width:0;max-width:100%;font-size:16px}.admin-page .monthly-entry>.button{white-space:normal;overflow-wrap:anywhere;width:100%;min-width:0;max-width:100%;height:auto}}.status-contact{border-top:1px solid var(--line);text-align:left;margin-top:32px;padding-top:28px}.status-contact h2{margin-bottom:16px;font-size:25px}.status-contact p{font-size:14px}.status-contact .request-actions{justify-content:flex-start}@media (min-width:701px){.admin-page .availability-form{grid-template-columns:minmax(0,1.15fr) minmax(0,.8fr) minmax(0,.8fr) minmax(0,1.25fr);align-items:end;gap:14px 16px;margin:24px 0 22px}.admin-page .availability-form label{min-width:0;margin:0}.admin-page .availability-form input,.admin-page .availability-form select{width:100%;min-width:0;max-width:100%;height:48px;margin-bottom:0;padding:10px 12px}.admin-page .availability-form>.button{grid-column:1/-1;justify-self:end;width:auto;min-height:42px;margin:0;padding:10px 20px}.admin-page .day-block-form{border-top:1px solid var(--line);grid-template-columns:minmax(180px,260px) auto;justify-content:start;align-items:end;gap:16px;margin:0 0 24px;padding-top:22px}.admin-page .day-block-form label{min-width:0;margin:0}.admin-page .day-block-form input{width:100%;min-width:0;height:48px;padding:10px 12px}.admin-page .day-block-form>.button{width:auto;padding:10px 20px}}#servizi .package-price>strong,#servizi .package-price>span{transform:translateY(12px)}.availability-calendar{border:1px solid var(--line);background:var(--surface);width:100%;max-width:420px;margin:0 0 28px;padding:20px}.calendar-top{justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px;display:flex}.calendar-top h3{font:500 18px var(--font);text-transform:capitalize;letter-spacing:0}.calendar-top button{border:1px solid var(--line);width:38px;height:38px;color:var(--text);background:0 0}.calendar-week,.calendar-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;display:grid}.calendar-week{text-align:center;color:var(--muted);margin-bottom:8px;font-size:11px}.calendar-days button{min-width:0;height:44px;color:var(--text);background:0 0;border:1px solid #555;padding:0 0 4px;font-size:14px;position:relative}.calendar-days button:disabled{color:#686868;opacity:1;cursor:default;background:0 0;border-color:#0000}.calendar-top button:disabled{cursor:default}.calendar-days button.selected{background:var(--text);color:#111;border-color:var(--text)}.calendar-days button:not(:disabled):hover{border-color:#fff}.calendar-days button[aria-current=date]{text-underline-offset:3px;font-weight:700;text-decoration:underline}.calendar-dot{background:currentColor;border-radius:50%;width:3px;height:3px;position:absolute;bottom:5px;left:calc(50% - 1.5px)}.calendar-status{margin-top:16px;font-size:12px;line-height:1.5}.calendar-legend{margin-top:8px;font-size:11px;line-height:1.5}@media (max-width:700px){.availability-calendar{max-width:380px;margin-left:auto;margin-right:auto;padding:14px}.calendar-top h3{font-size:16px}.calendar-week,.calendar-days{gap:4px}.calendar-days button{height:42px}}.clean-header{gap:20px}.header-actions{flex-shrink:0;align-items:center;gap:18px;margin-left:auto;display:flex}.header-icon{width:42px;height:44px;color:var(--text);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;padding:8px;display:inline-flex}.header-icon:hover{color:#b8b8b6}.hamburger{flex-direction:column;gap:5px;position:relative}.hamburger span{background:currentColor;width:22px;height:1.5px;transition:transform .22s,opacity .22s;display:block}.hamburger.is-open span:first-child{transform:translateY(6.5px)rotate(45deg)}.hamburger.is-open span:nth-child(2){opacity:0}.hamburger.is-open span:nth-child(3){transform:translateY(-6.5px)rotate(-45deg)}.header-menu{border:1px solid var(--line);opacity:0;visibility:hidden;pointer-events:none;background:#101010;width:300px;max-width:calc(100vw - 24px);transition:opacity .22s,transform .22s,visibility .22s;position:absolute;top:100%;right:5vw;transform:translateY(-8px)}.header-menu.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.header-menu>div{padding:12px 24px}.header-menu a{color:var(--nav-text);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:15px 0;font-size:16px;display:flex}.header-menu a:last-child{border-bottom:0}.header-menu a:hover{color:#fff}.header-menu a span{font-size:13px}.next-motion-page{background:#000;min-height:100svh}.next-motion{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:calc(100svh - 94px);padding:64px 24px;display:flex}.next-motion>.eyebrow{color:#aaa;letter-spacing:.2em;font-size:11px}.next-motion>img{width:clamp(160px,22vw,260px);height:auto;margin:36px 0;animation:.65s ease-out both motion-appear}.next-motion h1{color:#fff;max-width:100%;font-size:clamp(34px,6vw,76px);font-weight:700;line-height:1.1}.next-motion p{color:#aaa;max-width:490px;margin:24px 0 32px;font-size:16px;line-height:1.7}.next-motion .button{border-color:#666}@keyframes motion-appear{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:700px){.clean-header{gap:8px;padding-left:10px;padding-right:10px}.header-actions{gap:4px}.header-actions .header-book{min-height:40px;padding:10px 9px;font-size:11px}.header-actions .header-icon{width:32px;height:42px;padding:5px}.header-menu{width:280px;right:10px}.next-motion{min-height:calc(100svh - 76px);padding:44px 20px}.next-motion>img{margin:30px 0}.next-motion p{font-size:14px}}@media (max-width:360px){.clean-header{flex-wrap:wrap;row-gap:4px;height:auto;min-height:100px;padding-top:10px;padding-bottom:10px}.header-actions{margin-left:auto}.next-motion h1{font-size:31px}}@media (prefers-reduced-motion:reduce){.header-menu,.hamburger span{transition:none}.next-motion>img{animation:none}}.studio-access{text-align:center;max-width:760px;min-height:75svh;margin:0 auto;padding:150px 24px 80px}.studio-access-logo{object-fit:contain;width:140px;height:140px;margin:0 auto 34px;display:block}.studio-access h1{margin:18px 0 38px;font-size:clamp(28px,5vw,48px)}.studio-profiles{grid-template-columns:1fr 1fr;gap:18px;display:grid}.studio-profiles button{color:#fff;text-align:left;cursor:pointer;background:#111;border:1px solid #333;border-radius:4px;padding:30px 20px}.studio-profiles strong,.studio-profiles span{display:block}.studio-profiles strong{margin-bottom:12px;font-size:24px}.studio-profiles span{color:#aaa;font-size:13px}.studio-profiles button:disabled{opacity:.45;cursor:default}.studio-profiles button:not(:disabled):hover{border-color:#aaa}.studio-access form{text-align:left;gap:22px;max-width:420px;margin:0 auto;display:grid}.studio-access label{gap:10px;display:grid}.studio-access input{width:100%;font:inherit;color:#fff;background:#111;border:1px solid #444;border-radius:3px;padding:14px}.studio-legacy{color:#aaa;margin-top:36px;font-size:13px;display:inline-block}.studio-session{flex-wrap:wrap;justify-content:flex-end;gap:20px;max-width:1300px;margin:110px auto -80px;padding:0 5%;font-size:13px;display:flex}@media (max-width:600px){.studio-access{padding-top:120px}.studio-profiles{grid-template-columns:1fr}.studio-access-logo{width:110px;height:110px}.studio-session{margin-top:100px;margin-bottom:-70px}}.engineer-field{max-width:360px;margin:0 0 30px}.engineer-field select{width:100%;min-height:48px}.window-actions{flex-wrap:wrap;gap:16px;display:flex}.window-scope{color:#999;margin-top:4px;font-size:11px;display:block}.day-calendar-controls{justify-content:space-between;align-items:flex-end;gap:16px;margin:24px 0;display:flex}.day-calendar-controls label{gap:8px;min-width:0;max-width:210px;display:grid}.day-calendar-controls input{color:#fff;width:100%;min-width:0;font:inherit;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#111;border:1px solid #444;padding:10px}.staff-day-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.staff-day-card{background:#0d0d0d;border:1px solid #333;border-radius:4px;min-width:0;overflow:hidden}.staff-day-card h3{text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #333;margin:0;padding:20px;font-size:14px}.staff-day-card ul{margin:0;padding:10px;list-style:none}.staff-day-card>.hint,.day-full{margin:0;padding:20px}.day-full{color:#bcbcbc;background:#1c1c1c;font-size:12px;line-height:1.8}.day-slot{border-bottom:1px solid #292929;grid-template-columns:104px minmax(0,1fr);gap:12px;padding:14px 12px;font-size:13px;display:grid}.day-slot:last-child{border-bottom:0}.day-slot-time{font-variant-numeric:tabular-nums;white-space:nowrap}.day-slot strong{font-size:12px;font-weight:500}.day-slot-free{color:#eee}.day-slot-busy,.day-slot-closed{color:#999;background:#1b1b1b}.day-slot-personal{color:#aaa;border-left:2px solid #555}.day-slot-own{color:#111;background:#e4e4e4;border-left:2px solid #fff}.day-slot details{overflow-wrap:anywhere;margin-top:8px;font-size:12px}.day-slot summary{cursor:pointer;line-height:1.7}.day-slot details p{white-space:pre-wrap;line-height:1.6}.day-slot .text-link{color:inherit}@media (max-width:700px){.staff-day-grid{grid-template-columns:1fr}.day-calendar-controls{flex-wrap:wrap;gap:10px}.day-calendar-controls label{max-width:170px}.day-calendar-controls button{font-size:12px}.engineer-field{max-width:none}.day-slot{grid-template-columns:94px minmax(0,1fr);gap:10px;padding:13px 10px}.window-actions{gap:12px}}.admin-page .availability-compact{grid-template-columns:minmax(150px,.85fr) minmax(260px,1.7fr) auto;align-items:end;gap:12px;margin:24px 0;display:grid}.admin-page .availability-compact.with-times{grid-template-columns:minmax(145px,1fr) minmax(245px,1.65fr) minmax(105px,.7fr) minmax(105px,.7fr) auto}.admin-page .availability-compact label{min-width:0;margin:0;font-size:13px}.admin-page .availability-compact input,.admin-page .availability-compact select{box-sizing:border-box;width:100%;min-width:0;max-width:100%;height:48px;margin:7px 0 0;padding:10px;font-size:14px;line-height:1.25;display:block}.admin-page .availability-compact input[type=date],.admin-page .availability-compact input[type=time]{-webkit-appearance:none;appearance:none}.admin-page .availability-compact input::-webkit-date-and-time-value{text-align:left}.admin-page .availability-compact>.button{white-space:nowrap;height:48px;min-height:48px;margin:0;padding:10px 18px}.availability-editing{color:var(--muted);grid-column:1/-1;justify-content:space-between;align-items:center;gap:15px;font-size:13px;display:flex}.availability-history{margin:32px 0}.availability-history>h2{font-family:var(--font);letter-spacing:.08em;margin-bottom:20px;font-size:13px;line-height:1.5}.availability-day{border-top:1px solid var(--line);padding:18px 0}.availability-day>h3{font-family:var(--font);letter-spacing:0;text-transform:capitalize;margin-bottom:10px;font-size:14px;line-height:1.5}.availability-rule{grid-template-columns:minmax(145px,.85fr) minmax(170px,1fr) auto;align-items:center;gap:14px;padding:12px 0;font-size:14px;display:grid}.availability-rule .window-actions{gap:20px;display:flex}.availability-rule .text-link{min-height:36px}.availability-rule strong{font-weight:500}.availability-rule .window-scope{font-size:12px}@media (max-width:1000px){.admin-page .availability-compact,.admin-page .availability-compact.with-times{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-page .availability-compact>.button{grid-column:1/-1;justify-self:end;min-width:110px}.admin-page .availability-compact input,.admin-page .availability-compact select{font-size:16px}}@media (max-width:560px){.admin-page .availability-compact{gap:12px 10px}.admin-page .availability-compact label:nth-child(2){grid-area:2/1/auto/-1}.admin-page .availability-compact label:first-child{grid-column:1/-1}.admin-page .availability-compact>.button{width:100%}.availability-rule{grid-template-columns:1fr 1fr;gap:8px}.availability-rule .window-actions{grid-column:1/-1;justify-content:flex-end}.availability-editing{flex-wrap:wrap}}.admin-page .admin-toolbar{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:14px;margin:18px 0 24px;display:flex}.admin-page .admin-toolbar select{flex:0 220px;width:220px;min-width:0;max-width:100%;height:48px;margin:0;padding:10px 36px 10px 12px;line-height:1.3}.admin-page .admin-toolbar>button{justify-content:center;align-items:center;min-height:48px;margin:0;padding:10px 14px;line-height:1.3;display:inline-flex}.admin-page h1,.admin-page h3,.admin-page .contact-row{overflow-wrap:anywhere}.admin-page .admin-stats>div{min-width:0}.admin-page .admin-stats span{line-height:1.45;display:block}.admin-page .admin-tabs{flex-wrap:wrap;gap:4px 24px;overflow:visible}.admin-page .admin-tabs button{min-height:48px}.admin-page .request-heading>div{min-width:0}.admin-page .request-heading>strong{flex-shrink:0}.admin-page .request-actions{flex-wrap:wrap}.admin-page .notice>.text-link{margin:10px 0 10px 18px}.admin-page .availability-compact{margin-top:8px}.day-calendar-controls{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:14px;margin:20px 0 12px;display:flex}.day-calendar-controls label{min-width:0;margin:0}.day-calendar-controls input{min-width:0;max-width:100%;height:48px;margin:6px 0 0}.day-calendar-controls button{justify-content:center;align-items:center;min-height:48px;display:flex}.staff-day-calendar>.hint{margin-bottom:20px}.day-slot-body{overflow-wrap:anywhere;min-width:0}.day-slot-body>strong{font-size:14px;font-weight:600;line-height:1.5;display:block}.day-service{letter-spacing:.055em;border:1px solid;margin:7px 8px 0 0;padding:2px 6px;font-size:10px;font-weight:700;line-height:1.5;display:inline-block}.day-staff{font-size:12px}.day-status{margin-top:5px;font-size:11px;display:block}.day-slot-own details p{color:#383838}.day-slot-pending{color:#eee;background:#272727;border-left:3px dashed #aaa}.day-slot-pending details p{color:#ccc}.day-slot-closed{border-left:3px solid #666}.day-slot-busy{border-left:3px solid #aaa}.day-slot-free{color:#ccc;background:0 0}.day-slot-personal{border-left:3px dotted #777}.staff-day-card h3{line-height:1.5}@media (max-width:700px){.admin-page .admin-toolbar{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.admin-page .admin-toolbar select{width:100%;font-size:16px}.admin-page .admin-toolbar>button{justify-self:start}.admin-page .request-heading{flex-wrap:wrap;gap:10px}.admin-page .notice>.button{white-space:normal;max-width:100%}.day-calendar-controls{grid-template-columns:1fr 1fr;gap:10px;display:grid}.day-calendar-controls label{grid-area:1/1/auto/-1}.day-calendar-controls input{width:100%;font-size:16px}.day-calendar-controls button:last-child{justify-self:end}.admin-page .admin-tabs{gap:2px 18px}.admin-page .works-admin .admin-toolbar{display:flex}.admin-page .works-admin input,.admin-page .works-admin select,.admin-page .works-admin textarea{min-width:0;max-width:100%}}.studio-session{justify-content:flex-end;align-items:center;gap:12px;max-width:1200px;margin:0 auto;padding:22px 5vw 0;display:flex}.studio-session .text-link{min-height:32px;color:var(--muted);border:0;font-size:12px}.day-calendar-controls{grid-template-columns:140px minmax(170px,210px) 140px;justify-content:center;align-items:end;gap:16px;margin:20px auto;display:grid}.day-calendar-controls label{text-align:center}.day-calendar-controls input{text-align:center;-webkit-appearance:none;appearance:none;width:100%}.day-calendar-controls input::-webkit-date-and-time-value{text-align:center}.day-calendar-controls button{justify-content:center;justify-self:stretch}.calendar-links{border-top:1px solid var(--line);margin:36px 0 0;padding:24px 0 0}.calendar-links h2,.staff-settings>h2{font-family:var(--font);letter-spacing:.08em;font-size:13px;line-height:1.5}.calendar-links p{margin:10px 0 16px;font-size:13px}.calendar-link-actions{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.calendar-link-actions .button{min-height:44px;padding:10px 14px;font-size:13px}.calendar-link-actions .text-link{min-height:36px}.staff-settings>p{margin:8px 0 20px;font-size:14px}.staff-member{border:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:20px;max-width:600px;padding:22px;display:grid}.staff-member h3{letter-spacing:0;font-size:20px}.staff-member p,.staff-member>span{font-size:13px}.staff-member>.text-link{grid-column:1/-1;justify-self:start;font-size:12px}.staff-confirm{background:var(--bg);color:var(--text);border:1px solid #666;width:calc(100% - 32px);max-width:480px;padding:26px}.staff-confirm::backdrop{background:#000b}.staff-confirm h3{font-size:24px;line-height:1.3}.staff-confirm p{margin:16px 0 24px;font-size:14px}.staff-confirm>div{flex-wrap:wrap;gap:12px;display:flex}.date-selection-mode{max-width:210px;margin:8px 0 14px}.date-selection-mode label{font-size:13px}.date-selection-mode select{height:44px;margin-bottom:0}.multi-dates{align-self:end;min-width:0}.multi-dates>summary{cursor:pointer;border:1px solid #555;min-height:48px;padding:11px 10px;font-size:14px}.multi-dates-panel{background:var(--bg);border:1px solid #555;width:min(340px,100%);padding:14px}.multi-dates[open]{grid-column:1/-1}.multi-date-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin:12px 0;display:grid}.multi-date-grid>span{text-align:center;font-size:12px}.multi-date-grid button{min-height:36px;color:var(--text);background:0 0;border:1px solid #444;padding:0;font-size:13px}.multi-date-grid button[aria-pressed=true]{color:#111;background:#eee;border-color:#eee}.multi-date-grid button:disabled{cursor:default;opacity:.25}.multi-date-range{grid-template-columns:1fr 1fr;gap:10px;display:grid}.multi-date-range>button{grid-column:1/-1}.selected-date-list{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.selected-date-list button{color:#eee;background:#222;border:1px solid #555;padding:7px;font-size:12px}.multi-dates-panel .hint{margin-top:10px;font-size:12px}@media (max-width:700px){.studio-session{justify-content:flex-start;padding:14px 6vw 0}.studio-session+.admin-page{padding-top:14px}.day-calendar-controls{grid-template-columns:1fr 1fr;gap:10px;max-width:320px}.day-calendar-controls label{grid-area:1/1/auto/-1;justify-self:center;width:200px}.day-calendar-controls button:last-child{justify-self:stretch}.calendar-link-actions{gap:12px 20px}.calendar-link-actions>.button{width:100%}.staff-member{grid-template-columns:1fr;gap:14px}.multi-dates{grid-column:1/-1}.multi-dates-panel{width:100%;max-width:360px}.multi-dates-panel input{font-size:16px!important}}.day-slot-carlo,.day-slot-both{color:#ccc;background:#161616;border-left:3px dotted #888}.mobile-bottom-nav{display:none}@media (max-width:700px){html{scroll-padding-top:78px;scroll-padding-bottom:110px}body{padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))}.mobile-bottom-nav{z-index:60;padding:8px max(8px,env(safe-area-inset-right,0px)) calc(8px + env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left,0px));-webkit-backdrop-filter:blur(18px);background:#0e0e0ef7;border-top:1px solid #353535;grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-nav-item{color:#959595;letter-spacing:.02em;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-width:0;min-height:56px;font-size:10px;font-weight:500;line-height:1.25;text-decoration:none;display:flex}.mobile-nav-item.is-active{color:#fff;background:#222}.mobile-nav-item.is-active>span:last-child{font-weight:700}.mobile-nav-item:focus-visible{outline-offset:-3px}.mobile-nav-logo{background:#202020;border:1px solid #666;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;margin-top:-22px;display:flex;box-shadow:0 0 0 6px #0e0e0e}.mobile-nav-logo img{object-fit:contain;width:34px;height:34px}.mobile-nav-booking{color:#ddd;gap:7px}.mobile-nav-booking.is-active{background:0 0}.mobile-nav-booking.is-active .mobile-nav-logo{background:#303030;border-color:#fff}.header.clean-header{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0b0b0bf5;flex-wrap:nowrap;gap:12px;height:64px;min-height:64px;padding:0 20px}.header .header-brand{gap:9px;min-width:0}.header .header-brand>img{width:29px;height:29px}.header .brand-name{white-space:nowrap;font-size:20px}.header .header-actions{gap:0}.header .header-book,.header .header-actions>a.header-icon{display:none}.header .hamburger{width:44px;height:44px}.header .header-menu{border-radius:14px;width:270px;max-height:calc(100dvh - 170px);right:16px;overflow-y:auto}.hero{min-height:0;padding:24px 20px 0}.hero-top .eyebrow{letter-spacing:.13em;font-size:10px}.hero-body{gap:24px;padding:32px 0 28px}.hero h1{font-size:clamp(42px,11.6vw,62px);line-height:1.04}.hero p{margin-top:20px;font-size:16px;line-height:1.55}.hero-actions{flex-wrap:wrap;gap:16px;margin-top:24px}.hero-actions .button{border-radius:12px;min-height:50px}.hero-actions .text-link{align-items:center;min-height:44px;display:inline-flex}.hero .emblem img{width:140px}.hero-bottom{gap:10px;padding:18px 0;font-size:9px}.section{padding:40px 20px}.section-heading{gap:16px;margin-bottom:26px}.section-heading h2{font-size:36px;line-height:1.1}.section-heading p{font-size:14px;line-height:1.65}.package{border-radius:16px;gap:16px;margin-top:14px;padding:22px 18px}.package h3{font-size:36px}.package .button,.extra .button{border-radius:10px;min-height:48px}.package-details li{font-size:13px}.package-price{gap:4px}.extras{gap:14px}.extra{border-radius:16px;padding:22px 18px}.gallery{border-radius:16px;overflow:hidden}.studio-image{height:300px;max-height:75vh}.gallery-bar{padding:12px}.gallery-bar button{border-radius:8px;min-width:44px;min-height:40px}.portfolio-rail{grid-auto-columns:82%;gap:16px;margin-right:-20px;padding-right:20px}.portfolio-cover{border-radius:14px;overflow:hidden}.portfolio-meta{padding-top:14px}.gear img{border-radius:14px}.people-grid{gap:28px}.closing{padding:48px 20px}.closing h2{font-size:48px}.form-page,.admin-page{padding-left:20px;padding-right:20px}.form-page h1{font-size:40px;line-height:1.12}.booking-layout{gap:24px;margin-top:24px}.booking-summary{border-radius:16px;padding:22px}.service-choices{gap:8px}.service-choices button{border-radius:10px;min-height:48px}.booking-layout fieldset{min-width:0}.booking-layout input,.booking-layout select,.booking-layout textarea{border-radius:10px;min-width:0;max-width:100%;font-size:16px}.booking-layout .button{border-radius:12px;min-height:50px}.slot-buttons button{border-radius:10px;min-height:48px}.engineer-field{max-width:100%}.admin-page .request-card,.staff-day-card,.staff-member,.availability-rule{border-radius:12px}.admin-page .admin-tabs{gap:4px 16px}.admin-page .request-actions button{min-height:44px}.status-card{border-radius:16px}.studio-session{padding-left:20px;padding-right:20px}footer{gap:20px;padding:30px 20px}footer a{align-items:center;min-height:36px;display:inline-flex}}@media (max-width:700px) and (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.studio-swipe-gallery{min-width:0;max-width:100%;overflow:hidden}.studio-gallery-rail{scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:pan-x pan-y pinch-zoom;width:100%;min-width:0;display:flex;overflow:auto hidden}.studio-gallery-rail::-webkit-scrollbar{display:none}.studio-gallery-rail:focus-visible{outline-offset:-3px}.studio-gallery-rail.is-dragging{scroll-snap-type:none;cursor:grabbing;scroll-behavior:auto}.studio-gallery-slide{scroll-snap-align:start;scroll-snap-stop:always;flex:0 0 100%;min-width:0;margin:0}.studio-gallery-slide .studio-image{pointer-events:none;-webkit-user-drag:none;width:100%}.studio-gallery-dots{justify-content:center;align-items:center;gap:9px;padding:16px 0;display:flex}.studio-gallery-dots span{background:#666;border-radius:50%;width:6px;height:6px;display:block}.studio-gallery-dots span.is-active{background:#fff}@media (max-width:700px){.studio-gallery-slide .studio-image{aspect-ratio:4/3;object-fit:cover;object-position:50% 53%;height:auto;max-height:none}.studio-gallery-slide:nth-child(2) .studio-image{object-position:50% 50%}.studio-gallery-dots{padding:14px 0}body{padding-bottom:calc(112px + env(safe-area-inset-bottom,0px))}.mobile-bottom-nav{left:max(12px,env(safe-area-inset-left,0px));right:max(12px,env(safe-area-inset-right,0px));bottom:calc(12px + env(safe-area-inset-bottom,0px));isolation:isolate;background:#181818;border:1px solid #dcdcdc2e;border-radius:999px;align-items:center;width:auto;max-width:480px;margin:0 auto;padding:6px 8px;box-shadow:0 5px 18px #0003,inset 0 1px #ffffff09}.mobile-bottom-nav .mobile-nav-item{z-index:1;color:#aaa;background:0 0;border-radius:24px;gap:5px;min-height:56px;transition:color .22s;position:relative}.mobile-bottom-nav .mobile-nav-item.is-active{color:#fff;background:0 0}.mobile-bottom-nav .mobile-nav-logo{width:52px;height:52px;box-shadow:none;background:#1a1a1af0;border:1px solid #e6e6e640;margin-top:-19px;transition:background .24s,border-color .24s}.mobile-bottom-nav .mobile-nav-booking{gap:5px}.mobile-bottom-nav .mobile-nav-booking.is-active .mobile-nav-logo{background:0 0;border-color:#0000}.mobile-nav-indicator-track{z-index:0;pointer-events:none;position:absolute;inset:0 8px}.mobile-nav-indicator{left:calc((var(--active-index) + .5)*20% - 26px);background:#e6e6e621;border:1px solid #ffffff17;border-radius:20px;width:52px;height:34px;transition:left .26s cubic-bezier(.2,.8,.2,1.05),top .26s,height .26s,border-radius .26s,opacity .18s;position:absolute;top:8px;box-shadow:inset 0 1px #ffffff09}.mobile-bottom-nav[data-booking-active=true] .mobile-nav-indicator{background:#d2d2d226;border-color:#ffffff47;border-radius:50%;height:52px;top:-9px}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.mobile-bottom-nav{-webkit-backdrop-filter:blur(20px);background:#121212cc}.mobile-nav-logo{-webkit-backdrop-filter:blur(12px)}.mobile-nav-booking.is-active .mobile-nav-logo{-webkit-backdrop-filter:none}}}@media (max-width:700px) and (prefers-reduced-motion:reduce){.mobile-bottom-nav .mobile-nav-indicator,.mobile-bottom-nav .mobile-nav-item,.mobile-bottom-nav .mobile-nav-logo{transition:none}}@media (max-width:700px) and (prefers-reduced-transparency:reduce){.mobile-bottom-nav{-webkit-backdrop-filter:none;background:#181818}.mobile-bottom-nav .mobile-nav-logo{-webkit-backdrop-filter:none}}.calendar-week-mobile,.calendar-mobile-legend{display:none}@media (max-width:700px){.booking-layout .availability-calendar{width:100%;min-width:0;max-width:380px;box-shadow:none;background:#121212;border:1px solid #333;border-radius:22px;padding:16px}.booking-layout .availability-calendar .calendar-top{grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px;margin-bottom:18px;display:grid}.booking-layout .availability-calendar .calendar-top h3{text-transform:uppercase;text-align:center;letter-spacing:.02em;min-width:0;font-size:15px;line-height:1.3}.booking-layout .availability-calendar .calendar-top button{border-color:#333;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;padding:0;font-size:18px;display:flex}.booking-layout .availability-calendar .calendar-week,.booking-layout .availability-calendar .calendar-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px 4px}.booking-layout .availability-calendar .calendar-week{letter-spacing:.02em;margin-bottom:10px;font-size:9px;line-height:1.5}.booking-layout .availability-calendar .calendar-week-desktop{display:none}.booking-layout .availability-calendar .calendar-week-mobile{display:inline}.booking-layout .availability-calendar .calendar-days button{border-color:#3b3b3b;border-radius:10px;justify-content:center;align-items:center;min-width:0;height:44px;padding:0 0 4px;font-size:14px;line-height:1;display:flex}.booking-layout .availability-calendar .calendar-days button:disabled{color:#686868;background:#1b1b1b;border-color:#0000}.booking-layout .availability-calendar .calendar-days button.selected{background:var(--text);border-color:var(--text);color:#111}.booking-layout .availability-calendar .calendar-dot{width:4px;height:4px;bottom:5px;left:calc(50% - 2px)}.booking-layout .availability-calendar .calendar-day-partial .calendar-dot{background:0 0;border:1px solid}.booking-layout .availability-calendar .calendar-status{margin-top:14px;font-size:12px}.booking-layout .availability-calendar .calendar-mobile-legend{color:var(--muted);border-top:1px solid #2c2c2c;flex-wrap:wrap;gap:8px 12px;margin-top:16px;padding-top:12px;font-size:10px;line-height:1.5;display:flex}.booking-layout .availability-calendar .calendar-mobile-legend>span{align-items:center;gap:5px;display:inline-flex}.booking-layout .availability-calendar .calendar-mobile-legend i{background:var(--text);border-radius:50%;flex:none;width:5px;height:5px;display:inline-block}.booking-layout .availability-calendar .calendar-mobile-legend .calendar-legend-partial{border:1px solid var(--text);background:0 0}.booking-layout .availability-calendar .calendar-mobile-legend .calendar-legend-unavailable{background:#1b1b1b;border:1px solid #555;border-radius:3px;width:8px;height:8px}}.two-motion-intro{z-index:1000;padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);opacity:1;pointer-events:auto;background:#000;justify-content:center;align-items:center;display:none;position:fixed;inset:0}html[data-2motion-intro],html[data-2motion-intro] body{overflow:hidden}html[data-2motion-intro] .two-motion-intro{display:flex}html[data-2motion-intro] .mobile-bottom-nav{visibility:hidden}.intro-composition{flex-direction:column;align-items:center;gap:28px;display:flex}.intro-logo{perspective:600px;width:120px;height:120px;transition:transform .3s}.intro-logo img{object-fit:contain;transform-origin:50%;-webkit-backface-visibility:visible;backface-visibility:visible;width:100%;height:100%}html[data-2motion-intro] .intro-logo img{animation:.22s both intro-arrive,1.6s cubic-bezier(.25,.45,.35,1) both intro-turn}.intro-track{background:#292929;border-radius:2px;width:140px;height:2px;overflow:hidden}.intro-track>span{transform-origin:0;background:#fff;border-radius:2px;width:100%;height:100%;display:block;transform:scaleX(0)}html[data-2motion-intro=loading] .intro-track>span{animation:1.6s ease-out both intro-search}html[data-2motion-intro=complete] .intro-track>span{transition:transform .1s;animation:none;transform:none}html[data-2motion-intro=complete] .intro-logo img{animation-play-state:paused}html[data-2motion-intro=complete] .intro-logo{transform:scale(1.07)}html[data-2motion-intro=complete] .two-motion-intro{opacity:0;pointer-events:none;transition:opacity .3s .1s}@keyframes intro-arrive{0%{opacity:0}to{opacity:1}}@keyframes intro-turn{0%{transform:rotateY(0)}to{transform:rotateY(360deg)}}@keyframes intro-search{0%{transform:scaleX(0)}to{transform:scaleX(.9)}}@media (max-width:700px){.intro-logo{width:96px;height:96px}.intro-track{width:124px}.intro-composition{gap:24px}}@media (prefers-reduced-motion:reduce){html[data-2motion-intro] .intro-logo img,html[data-2motion-intro] .intro-track>span{animation:none!important}.intro-track>span{width:35%;transform:none}html[data-2motion-intro=complete] .intro-track>span{width:100%}html[data-2motion-intro=complete] .intro-logo{transform:none}html[data-2motion-intro=complete] .two-motion-intro{transition:opacity .12s linear}}@media (max-width:700px){.mobile-bottom-nav{touch-action:pan-y pinch-zoom;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background-image:linear-gradient(#ffffff09,#fff0 65%);border-color:#e6e6e63b}.mobile-bottom-nav .mobile-nav-item,.mobile-bottom-nav .mobile-nav-item img{touch-action:pan-y pinch-zoom;-webkit-user-drag:none}.mobile-bottom-nav .mobile-nav-indicator{transform-origin:50%;background:linear-gradient(160deg,#ffffff30,#d2d2d21a);border-color:#ffffff2b;box-shadow:inset 0 1px #ffffff0e}.mobile-bottom-nav[data-dragging=true] .mobile-nav-indicator{will-change:left,transform;transition:none;opacity:1!important}.mobile-bottom-nav[data-dragging=true] .mobile-nav-item{color:#aaa}.mobile-bottom-nav[data-dragging=true] .mobile-nav-booking .mobile-nav-logo{background:#1a1a1af0;border-color:#e6e6e640}.mobile-bottom-nav[data-drag-target=booking] .mobile-nav-booking .mobile-nav-logo{-webkit-backdrop-filter:none;background:0 0;border-color:#0000}.mobile-bottom-nav[data-drag-target=home] [data-nav-id=home],.mobile-bottom-nav[data-drag-target=studio] [data-nav-id=studio],.mobile-bottom-nav[data-drag-target=booking] [data-nav-id=booking],.mobile-bottom-nav[data-drag-target=works] [data-nav-id=works],.mobile-bottom-nav[data-drag-target=profile] [data-nav-id=profile]{color:#fff}}@media (max-width:700px) and (prefers-reduced-transparency:reduce){.mobile-bottom-nav .mobile-nav-indicator{background:#353535}}.push-controls{border:1px solid var(--line);text-align:left;background:#121212;min-width:0;margin:24px 0;padding:20px}.push-controls strong{font-size:15px;font-weight:600;display:block}.push-controls p{overflow-wrap:anywhere;margin:8px 0 0;font-size:13px;line-height:1.6}.push-actions{flex-wrap:wrap;align-items:center;gap:14px 22px;margin-top:16px;display:flex}.push-actions button{min-height:44px}.push-active{color:#eee;font-size:13px}.push-controls .push-footnote{color:#999;margin-top:14px;font-size:11px}.request-card[id]{scroll-margin-top:100px}@media (max-width:700px){.push-controls{border-radius:12px;padding:16px}.push-actions{gap:12px 20px}.push-actions>.button{white-space:normal;width:100%}.push-active{flex-basis:100%}}.admin-page .request-card,.admin-page .admin-work-row>div,.admin-page .work-editor fieldset{overflow-wrap:anywhere;min-width:0}.admin-page .request-actions>label{max-width:100%}.admin-page .approval-actions{align-items:flex-end}.admin-page .approval-actions>label>span{display:block}.booking-cancel-dialog{overscroll-behavior:contain;border-radius:12px;max-height:calc(100dvh - 32px);overflow:auto}.booking-cancel-dialog h3,.booking-cancel-dialog p{overflow-wrap:anywhere}.booking-cancel-dialog .button{white-space:normal;text-align:center;max-width:100%;height:auto;min-height:48px;line-height:1.4}@media (max-width:700px){.admin-page .approval-actions{align-items:stretch}.admin-page .request-actions>.text-link{white-space:normal;overflow-wrap:anywhere;text-align:left;max-width:100%}.booking-cancel-dialog{padding:22px 18px}.booking-cancel-dialog>div{grid-template-columns:minmax(0,1fr);display:grid}.booking-cancel-dialog .button{width:100%}}
