.studio-layout{grid-template-columns:320px minmax(0,1fr);gap:48px;margin-top:48px;display:grid}@media (width<=900px){.studio-layout{grid-template-columns:1fr}}.studio-info{align-content:start;gap:24px;display:grid}.info-card{border:1.5px solid var(--navy);box-shadow:7px 7px 0 var(--navy-deep);background:#fffdf6;border-radius:14px;padding:20px;position:relative}.info-card .kicker{margin:0 0 10px}.info-card p{margin:0;font-size:15px;line-height:1.5}.price-table{border-collapse:collapse;width:100%;font-size:15px}.price-table td{padding:5px 0}.price-table td:last-child{text-align:right}.price-note{color:var(--ink-faint);font-size:13px;margin-top:10px!important}.how-list{margin:0;padding-left:20px;font-size:15px}.how-list li{margin-bottom:6px}.booking-form-wrap{min-width:0}.studio-note{background:linear-gradient(90deg,#122e440d 1px,#0000 1px) 0 0/28px 28px,linear-gradient(#122e440b 1px,#0000 1px) 0 0/28px 28px,#fffdf6;border:1.5px solid #c9a0508c;border-radius:14px;align-items:flex-start;gap:14px;margin-bottom:24px;padding:18px 20px;display:flex}.studio-note-icon{border:1.5px solid var(--gold-deep);color:var(--gold-deep);font:700 italic 14px/1 var(--f-display);border-radius:50%;flex:none;justify-content:center;align-items:center;width:22px;height:22px;margin-top:2px;display:flex}.studio-note-kicker{color:var(--gold-deep);font:800 11px/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;margin:0 0 6px}.studio-note p:last-child{color:var(--ink-soft);margin:0;font-size:14.5px;line-height:1.5}.booking-step{border:1.5px solid var(--navy);box-shadow:9px 9px 0 var(--navy-deep);background:#fffdf6;border-radius:14px;margin-bottom:24px;padding:24px}.booking-step:first-child{background:linear-gradient(90deg,#122e440f 1px,#0000 1px) 0 0/32px 32px,linear-gradient(#122e440e 1px,#0000 1px) 0 0/32px 32px,#fffdf6;padding-left:42px;position:relative;overflow:hidden}.booking-step:first-child:before{background:radial-gradient(circle, var(--navy) 0 4px, transparent 4.5px) 0 6px / 1px 36px;content:"";opacity:.26;width:12px;position:absolute;inset:16px auto 16px 16px}.booking-step:first-child:after{background:var(--gold);border:1.5px solid var(--navy);box-shadow:4px 4px 0 var(--navy-deep);color:var(--navy);content:"planner";font:800 11px/1 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;border-radius:10px;padding:9px 12px;position:absolute;top:18px;right:22px;transform:rotate(4deg)}.step-label{font:700 16px/1 var(--f-sans);align-items:center;gap:10px;margin-bottom:20px;display:flex}.step-num{background:var(--navy);color:var(--white);border-radius:50%;flex:none;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;font-weight:800;display:inline-flex}.calendar-loading{color:var(--ink-faint);font-size:14px}.cal-grid{gap:12px;display:grid}.cal-month{background:radial-gradient(circle, #122e4414 1px, transparent 1.25px) 0 0 / 18px 18px, var(--paper-soft);box-shadow:none;color:var(--navy);border:1px dashed #122e4452;border-radius:14px;padding:18px}.cal-month-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:14px;display:flex}.cal-month-title{color:var(--navy);font:800 16px/1 var(--f-sans)}.cal-nav{border:1px solid var(--navy-deep);border-radius:var(--radius);color:var(--navy);cursor:pointer;background:#fffdf6;padding:4px 10px;font-size:14px}.cal-nav:hover{background:var(--gold)}.cal-days-head{font:500 11px/1 var(--f-mono);letter-spacing:.06em;text-align:center;text-transform:uppercase;grid-template-columns:repeat(7,1fr);margin-bottom:4px;display:grid}.cal-days-head span{color:var(--ink-faint);padding:4px 0}.cal-days{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.cal-day{aspect-ratio:1;border-radius:var(--radius);justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}.cal-day.unavailable{color:var(--paper-deep)}.cal-day.available{color:var(--navy);cursor:pointer;background:#0c87c41f;border:1px solid #122e4438;transition:background .12s,transform .12s}.cal-day.available:hover{background:var(--gold);border-color:var(--gold);transform:translateY(-1px)}.cal-day.today{box-shadow:inset 0 0 0 2px var(--gold)}.cal-day.selected{background:var(--navy);border-color:var(--navy);box-shadow:none;color:#fff}.time-fields{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}@media (width<=600px){.time-fields{grid-template-columns:1fr}}.time-field{gap:6px;display:grid}.time-field label{color:var(--ink-faint);font:500 11px/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase}.time-field select{border:1px solid var(--navy);border-radius:var(--radius);background:#fffdf6;min-height:42px;padding:8px 11px}.price-preview{background:var(--notebook-bg);border:1px solid var(--navy);border-left:4px solid var(--gold);border-radius:var(--radius);margin-top:16px;padding:14px 16px}.price-preview .kicker{margin:0 0 6px}.price-big{font:800 28px/1 var(--f-sans);margin:0 0 4px}.form-fields{gap:16px;display:grid}.field-row{gap:7px;display:grid}.field-row label{color:var(--ink-faint);font:500 11px/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase}.field-row input,.field-row textarea{border:1px solid var(--navy);border-radius:var(--radius);background:#fffdf6;width:100%;min-height:42px;padding:9px 12px}.field-row textarea{resize:vertical;min-height:80px}.req{color:var(--danger)}.opt{color:var(--ink-faint);font-size:11px;font-weight:400}.submit-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-top:20px;display:flex}.booking-summary{color:var(--ink-soft);font-size:14px;line-height:1.5}.booking-summary strong{color:var(--ink)}.form-error{border-radius:var(--radius);color:var(--danger);background:#f7e3df;border:1px solid #e8c0bb;margin-top:12px;padding:10px 14px;font-size:14px}.unavailable-note{border:1.5px dashed var(--navy);box-shadow:7px 7px 0 var(--navy-deep);background:#fffdf6;border-radius:14px;padding:24px}.unavailable-note p{margin:0}.studio-hero{padding-bottom:var(--sp-2)}.studio-main{padding-top:var(--sp-4)}.studio-art{background:linear-gradient(90deg, #ffffff1f 1px, transparent 1px) 0 0 / 30px 30px, linear-gradient(#ffffff1f 1px, transparent 1px) 0 0 / 30px 30px, var(--blue-deep);border:1.5px solid var(--navy);border-radius:16px;justify-content:center;align-items:center;width:100%;max-width:440px;margin:0 auto;padding:clamp(10px,1.6vw,16px);display:flex;box-shadow:5px 9px 22px -12px #0a1f306b}.studio-art-img{aspect-ratio:1254/706;background-color:#fff;width:100%;display:block;-webkit-mask:url(/assets/brand/studio-line-drawing.webp) 50%/contain no-repeat;mask:url(/assets/brand/studio-line-drawing.webp) 50%/contain no-repeat}
