:root{--ink:#242322;--accent:#d7c39b;--paper:#f4f0e9;--line:#ded6c9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{background:var(--paper);color:var(--ink);margin:0;font-family:DM Sans,Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}header{border-bottom:1px solid var(--line);background:var(--paper);justify-content:space-between;align-items:center;padding:24px 5%;display:flex}.brand{letter-spacing:4px;font-size:24px;font-weight:700;line-height:1.2;text-decoration:none}.brand span{letter-spacing:3.4px;margin-top:5px;font-size:12px;display:block}nav{align-items:center;gap:30px;display:flex}nav a{font-size:14px;text-decoration:none}.button{background:var(--ink);color:#fff;border:0;padding:15px 27px;font-size:15px;text-decoration:none;display:inline-block}.button.small{padding:11px 20px}h1,h2{letter-spacing:-2px;margin:16px 0 24px;font-family:Playfair Display,Georgia,serif;font-weight:500;line-height:1.08}h1{font-size:clamp(52px,6.4vw,98px)}h2{font-size:clamp(38px,4vw,60px)}h3{font-size:23px;font-weight:500;line-height:1.25}.eyebrow{letter-spacing:2px;font-size:12px;font-weight:600}.hero{grid-template-columns:1fr 1fr;min-height:680px;display:grid}.hero-copy{background:var(--ink);color:var(--paper);flex-direction:column;align-items:flex-start;padding:70px 10% 30px;display:flex}.hero-copy .button{background:var(--accent);color:var(--ink);margin-top:20px}.hero-copy p:not(.eyebrow){color:#ddd6cc;font-size:18px}.hero-bottom{letter-spacing:1px;gap:40px;margin-top:auto;padding-top:55px;font-size:12px;display:flex}.hero-image{margin:0;position:relative;overflow:hidden}.hero-image img{object-fit:cover;width:100%;height:100%;position:absolute}.hero-image figcaption{color:#fff;background:#242322aa;padding:7px 12px;font-size:12px;position:absolute;bottom:14px;left:20px}.section{padding:90px 7%}.section-title{justify-content:space-between;align-items:end;gap:30px;display:flex}.section-title p{margin-bottom:24px}.filters{flex-wrap:wrap;gap:8px;margin:25px 0;display:flex}.filters button{border:1px solid var(--line);background:0 0;border-radius:30px;padding:9px 18px;font-size:14px}.filters button.active{background:var(--ink);color:#fff;border-color:var(--ink)}.portfolio{grid-template-columns:1fr 1fr;gap:26px;display:grid}.portfolio figure{margin:0}.portfolio img{object-fit:cover;width:100%;height:510px;display:block}.portfolio figure:nth-child(2){padding-top:55px}.portfolio figcaption{justify-content:space-between;gap:10px;padding:18px 0;font-size:21px;display:flex}.portfolio small,.muted{color:#70675c;font-size:14px}.portfolio small{align-self:center}.services{border-top:1px solid var(--line);background:#ebe5dc}.service-grid{grid-template-columns:repeat(3,1fr);gap:35px;margin:45px 0;display:grid}.service-grid article{border-top:1px solid #c5b79d;padding:24px 0}.number{color:#70675c;font-size:13px}.service-grid a{text-underline-offset:5px;font-size:14px}.about{text-align:center;max-width:1050px;margin:auto}.about>p:last-child{max-width:650px;margin:35px auto;font-size:19px}.booking{background:var(--ink);color:#fff;grid-template-columns:1fr 1fr;gap:7%;display:grid}.booking em{color:var(--accent)}.booking .muted{color:#cfc3b1}.booking-card{color:var(--ink);border:1px solid var(--line);background:#fff;padding:32px}.booking-card .muted{color:#70675c}label{margin:16px 0;font-size:14px;font-weight:500;display:block}input,select,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #c9bfb0;border-radius:0;margin-top:7px;padding:12px;display:block}textarea{resize:vertical;min-height:95px}.slot-list{max-height:380px;overflow:auto}.slot{text-align:left;border:1px solid var(--line);background:#fff;flex-direction:column;align-items:start;gap:4px;width:100%;margin-top:10px;padding:16px;display:flex}.slot.selected{border:2px solid var(--ink);background:#ebe5dc}.slot small{font-size:14px}.form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.empty{padding:24px 0}.trap{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.error{color:#a82929;font-size:14px}.error button{color:inherit;background:0 0;border:0;text-decoration:underline}code{overflow-wrap:anywhere;font-size:14px}footer{justify-content:space-between;align-items:center;gap:25px;padding:45px 5%;font-size:14px;display:flex}footer span{font-size:12px}.studio h1{font-size:52px}.stats{gap:20px;margin:35px 0;display:flex}.stats div{border:1px solid var(--line);padding:20px 30px}.stats strong{font-size:35px;display:block}.studio-grid{grid-template-columns:370px 1fr;gap:40px;display:grid}.studio-grid h2{letter-spacing:-1px;font-size:32px}.record{border:1px solid var(--line);overflow-wrap:anywhere;background:#fff;margin-bottom:16px;padding:24px}.record button{border:1px solid var(--line);background:#fff;margin-left:20px;padding:7px 12px}.record select{max-width:200px}.record small{font-size:12px}.notice{background:var(--accent);padding:15px;position:sticky;bottom:20px}.space-top{margin-top:50px}:focus-visible{outline-offset:4px;outline:3px solid #94733b}@media (max-width:800px){header{gap:20px;padding:20px 5%}nav{gap:15px}nav>a:not(.button){display:none}.brand{font-size:20px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:50px 7%}.hero-image{height:450px}.hero h1{font-size:70px}.hero-bottom{gap:20px;padding-top:40px;font-size:12px}.section{padding:60px 6%}.section-title{display:block}.portfolio img{height:370px}.portfolio figcaption{flex-direction:column}.portfolio small{align-self:start}.service-grid{grid-template-columns:1fr 1fr}.booking{grid-template-columns:1fr;gap:30px}.studio-grid{grid-template-columns:1fr}.studio h1{font-size:40px}footer{flex-wrap:wrap}.form-grid{grid-template-columns:1fr;gap:0}}@media (max-width:480px){.portfolio{grid-template-columns:1fr}.portfolio figure:nth-child(2){padding-top:0}.service-grid{grid-template-columns:1fr;gap:15px}.booking-card{padding:22px}.hero-image{height:400px}.hero h1{font-size:60px}nav .button{padding:10px 12px;font-size:13px}}.hero-copy{color:var(--ink);background:linear-gradient(145deg,#f5f1eb,#e6ded2)}.hero-copy em{color:#8d6f3b}.hero-copy p:not(.eyebrow){color:#655b50}.hero-copy .button{background:var(--ink);color:#f5f1eb;border:1px solid #9f8557}.hero-bottom{color:#736554}.brand{color:#242322}.brand span{color:#8d6f3b}.hero-image figcaption{background:#242322bd}.booking{background:linear-gradient(130deg,#242322,#3a3530)}.booking-card,.slot{background:#fcfaf6}.slot.selected{background:#eee6d9;border-color:#94733b}.button:hover{background:#514334}.filters button.active{background:#242322;border-color:#94733b}.service-grid article{border-top-color:#ae9363}.record{background:#fcfaf6}.notice{background:#e5d6b8}.stats div{border-top:2px solid #ae9363}.studio-tabs{flex-wrap:wrap;gap:24px;margin:30px 0;display:flex}.studio-tabs a{border-bottom:1px solid #ae9363;padding:8px 0}.editor{border-top:1px solid var(--line);padding:40px 0 70px}.editor-grid{grid-template-columns:minmax(260px,1fr) minmax(320px,1.6fr);align-items:start;gap:30px;display:grid}.editor textarea{min-height:75px}.photo-editor-grid{grid-template-columns:1fr 1fr;gap:15px;display:grid}.photo-edit{padding:18px}.photo-edit img{object-fit:cover;width:100%;height:220px}.editor-actions{flex-wrap:wrap;gap:8px;display:flex}.editor-actions button,.delete-confirm button{margin:0;padding:8px 10px;font-size:14px}.delete-confirm{background:#eee1d7;margin-top:12px;padding:12px}.editor .notice{position:static}.editor .section-title .button{color:#fff}.studio-tabs{display:flex!important}.editor label{font-size:14px}@media (max-width:900px){.editor-grid{grid-template-columns:1fr}}@media (max-width:550px){.photo-editor-grid{grid-template-columns:1fr}}.calendar-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.calendar-header h3{text-align:center;font-size:20px}.calendar-header button{border:1px solid var(--line);background:0 0;padding:8px;font-size:14px}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;display:grid}.calendar-grid .weekday{text-align:center;padding:9px 0;font-size:12px}.calendar-grid button{color:#776e62;background:#f0ede8;border:1px solid #e7e2da;min-height:61px;padding:9px 1px}.calendar-grid button span{font-size:16px;display:block}.calendar-grid button small{font-size:12px;display:block}.calendar-grid button.available{color:#443820;background:#eee0c2;border-color:#b79c67}.calendar-grid button.chosen{color:#fff;background:#242322;border:2px solid #b79c67}.calendar-grid button:disabled{cursor:default;opacity:.6}.calendar-day-label{margin:20px 0 10px;font-size:16px}.booking-page-intro{background:#ebe5dc;padding:30px 7%}.pricing-page{max-width:1350px;margin:auto}.pricing-page h1{font-size:clamp(42px,5vw,72px)}.pricing-intro{max-width:700px}.package-grid{grid-template-columns:repeat(2,1fr);gap:24px;margin:45px 0;display:grid}.package-card{border:1px solid var(--line);background:#fcfaf6;border-top:3px solid #ae9363;padding:35px}.package-card h2{letter-spacing:-1px;font-size:32px}.package-price{color:#806331;font-size:23px;font-weight:600}.multiline{white-space:pre-line;overflow-wrap:anywhere}.policy-grid{grid-template-columns:1fr 1fr;gap:30px;display:grid}.policy-grid article{border-top:1px solid #b79c67;padding:20px 0}.policy-grid h2{letter-spacing:-1px;font-size:30px}.contact-panel{color:#f4f0e9;background:#242322;margin-top:40px;padding:35px}.contact-panel .muted{color:#cfc3b1}.contact-panel h2{font-size:35px}.booking .calendar .muted{color:#70675c}@media (max-width:550px){.package-grid,.policy-grid{grid-template-columns:1fr}.calendar-header button{padding:6px;font-size:12px}.calendar-grid{gap:3px}.calendar-grid button small{letter-spacing:-.5px;font-size:12px}.calendar-grid button{min-height:58px}.calendar-header h3{font-size:18px}}.pricing-logo{object-fit:contain;width:min(440px,90%);height:180px;margin:0 auto 28px;display:block}.pricing-page>.eyebrow,.pricing-page>h1,.pricing-intro{text-align:center}.pricing-intro{margin:0 auto}.package-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.package-card{padding:28px}.package-card h2{font-size:29px}.package-card .button{margin-top:12px}.policy-grid p{white-space:pre-line}@media (max-width:900px){.package-grid{grid-template-columns:1fr}.pricing-logo{height:140px}}.day-manager{border-top:1px solid var(--line);padding:40px 0}.day-manager .studio-grid{grid-template-columns:minmax(310px,1fr) minmax(300px,1.2fr)}.availability-tools{flex-wrap:wrap;gap:10px;margin:15px 0;display:flex}.availability-tools button{background:#eee0c2;border:1px solid #b79c67;padding:9px 12px}.day-manager .notice{position:static}.legacy-bookings{margin-top:45px}.legacy-bookings summary{cursor:pointer;border-top:1px solid var(--line);padding:16px;font-size:18px}@media (max-width:800px){.day-manager .studio-grid{grid-template-columns:1fr}}.bookings-dashboard{max-width:1400px;margin:auto}.bookings-dashboard>h1{font-size:clamp(42px,5vw,70px)}.dashboard-shortcuts{flex-wrap:wrap;align-items:center;gap:22px;margin:25px 0 40px;display:flex}.request-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;display:flex}.request-heading button{background:#fff;border:1px solid #b79c67;padding:10px 15px}.booking-owner-nav>a{display:inline!important}.bookings-dashboard .day-manager>h2{font-size:40px}@media (max-width:550px){.booking-owner-nav{gap:12px}.booking-owner-nav>a{font-size:13px}.bookings-dashboard{padding:35px 5%}.dashboard-shortcuts{gap:15px}}.brand{letter-spacing:0;font-family:DM Sans,Arial,sans-serif;font-size:28px;font-weight:400;line-height:1.2}.brand span{letter-spacing:3px;font-size:12px;font-weight:600}.pricing-link{color:#302719;background:#e5d6b8;border:1px solid #b79c67;padding:13px 22px;font-size:16px;font-weight:500;text-decoration:none;transition:background .15s;display:inline-block;box-shadow:0 3px 12px #24232212}.pricing-link:hover{background:#d7c39b}.pricing-link:focus-visible{outline-offset:4px;outline:3px solid #b79c67}@media (max-width:800px){.brand{font-size:24px}}@media (max-width:480px){header{gap:12px}.brand{font-size:22px}.brand span{letter-spacing:2px;font-size:12px}}.brand-logo{flex-shrink:0;width:210px;display:block}.brand-logo img{width:100%;height:auto;display:block}.brand-logo span{text-align:center;margin-top:5px}.brand-logo:focus-visible{outline-offset:5px;outline:3px solid #94733b}@media (max-width:800px){.brand-logo{width:185px}}@media (max-width:480px){.brand-logo{width:160px}}.portfolio{gap:36px}.portfolio img,.hero-image,.photo-edit img{background:#e8e1d7}.portfolio img{height:clamp(340px,43vw,600px)}.portfolio figcaption{border-bottom:1px solid var(--line);padding:16px 0 24px;font-size:19px}.portfolio small{text-align:right;max-width:65%;font-size:14px}.button{transition:background .18s,box-shadow .18s}.button:hover{box-shadow:0 4px 14px #24232220}.service-grid article{padding-top:28px}.photo-edit input[type=range]{accent-color:#94733b;border:0;padding:0}.photo-edit img{display:block}.hero-image img{background:#e8e1d7}@media (max-width:800px){.portfolio{gap:24px}.portfolio small{text-align:left;max-width:100%}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.pricing-link{transition:none}}.brand-header{z-index:30;color:#f4f0e9;background:#242322;border-bottom:1px solid #806b45;padding:14px 5%;position:sticky;top:0}.brand-header .brand-logo{width:175px}.brand-header .brand span{color:#d7c39b}.header-actions{align-items:center;gap:12px;display:flex}.menu-toggle{color:#f4f0e9;background:0 0;border:1px solid #9e8c6a;border-radius:30px;align-items:center;gap:10px;padding:12px 18px;display:flex}.menu-toggle svg{transition:transform .2s}.menu-toggle .rotated{transform:rotate(45deg)}.book-button{color:#242322;background:linear-gradient(115deg,#b79755,#ead7a8,#b79755) 0 0/200%;border:1px solid #e8d5a8;border-radius:5px;justify-content:center;align-items:center;gap:9px;animation:7s ease-in-out infinite gold-shift;display:inline-flex}.book-button:hover{color:#242322;background:#ead7a8;transform:translateY(-1px)}@keyframes gold-shift{50%{background-position:100%}}.site-menu{background:#242322;border:1px solid #9e8c6a;flex-direction:column;align-items:stretch;gap:0;min-width:260px;padding:15px;position:absolute;top:100%;right:5%;box-shadow:0 18px 35px #0003;display:flex!important}.site-menu>a{padding:12px 15px;font-size:16px;display:flex!important}.instagram-link{align-items:center;gap:10px;font-size:14px;text-decoration:none;display:inline-flex}.instagram-link:hover{color:#a38447}.brand-transition{z-index:9999;background:#242322;place-items:center;display:grid;position:fixed;inset:0}.brand-transition img{width:min(360px,72vw);height:auto;animation:.45s ease-out both logo-arrive}@keyframes logo-arrive{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:none}}#work.section{padding:55px 4%}.portfolio{columns:3;column-gap:12px;display:block}.portfolio figure{break-inside:avoid;background:#e8e1d7;margin:0 0 12px;position:relative;overflow:hidden;padding:0!important}.portfolio img{width:100%;height:420px;display:block}.portfolio figcaption{color:#fff;background:linear-gradient(#0000,#0009);border:0;align-items:end;gap:8px;margin:0;padding:38px 14px 12px;font-size:15px;display:flex;position:absolute;bottom:0;left:0;right:0}.portfolio small{color:#fff;font-size:13px}.filters{margin:18px 0 22px}.section-title h2,.section-title p{margin-bottom:12px}.choice-group{border:0;margin:24px 0;padding:0}.choice-group legend{margin-bottom:10px;font-size:18px;font-weight:500}.service-choices{grid-template-columns:1fr 1fr;gap:8px;display:grid}.choice{border:1px solid var(--line);cursor:pointer;background:#fff;align-items:center;gap:12px;margin:0;padding:12px;display:flex}.choice:has(input:checked){background:#f0e6d3;border-color:#94733b;box-shadow:inset 3px 0 #94733b}.choice input{accent-color:#94733b;flex-shrink:0;width:18px;height:18px;margin:0}.package-choice{margin:8px 0}.package-choice span{justify-content:space-between;align-items:center;gap:12px;width:100%;display:flex}.package-choice strong{font-size:14px;font-weight:500}.package-choice small{color:#806331;white-space:nowrap;font-size:14px}.booking-card{border-top:3px solid #b79755}.booking-page-intro{padding:24px 7%}.section{padding-top:65px;padding-bottom:65px}footer{color:#f4f0e9;background:#242322;border-top:1px solid #9e8c6a}footer .brand span{color:#d7c39b}@media (max-width:900px){.portfolio{columns:2}.portfolio img{height:380px}}@media (max-width:550px){.brand-header{gap:10px;padding:12px 4%}.brand-header .brand-logo{width:125px}.brand-header .brand span{font-size:10px}.header-actions{gap:7px}.menu-toggle{gap:5px;padding:10px 12px;font-size:14px}.brand-header .book-button{padding:11px 12px;font-size:13px}.book-button svg{display:none}.site-menu{min-width:0;left:4%;right:4%}.portfolio{columns:2;column-gap:8px}.portfolio figure{margin-bottom:8px}.portfolio img{height:280px}.portfolio figcaption{padding:30px 8px 8px;font-size:12px}.portfolio small{display:none}.section{padding-top:45px;padding-bottom:45px}#work.section{padding:35px 3%}.package-choice span{flex-wrap:wrap;gap:4px}.section-title h2{font-size:38px}}@media (prefers-reduced-motion:reduce){.book-button,.brand-transition img{animation:none}.menu-toggle svg{transition:none}}@media (max-width:360px){.brand-header .brand-logo{width:100px}.menu-toggle{padding:9px;font-size:13px}.brand-header .book-button{padding:10px 9px;font-size:12px}.header-actions{gap:5px}}.portfolio{column-gap:0}.portfolio figure{margin:0;line-height:0}.portfolio figcaption{line-height:1.4}.portfolio .full-photo img{height:auto}.portfolio img{vertical-align:middle}.hero-logo-fallback{padding:12%;object-fit:contain!important}.hero-copy .session-button{color:#242322;background:linear-gradient(110deg,#b79755,#eddbb4);border:1px solid #b79755;border-radius:30px;padding:15px 30px;transition:transform .2s,box-shadow .2s}.hero-copy .session-button:hover{color:#242322;background:#eddbb4;transform:translateY(-2px);box-shadow:0 6px 18px #94733b24}.hero-copy .session-button:active{transform:translateY(0)}.site-menu{animation:.18s ease-out menu-enter}.brand-header .brand-logo img{animation:.65s ease-out logo-greeting}.book-button{animation:none}@keyframes menu-enter{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}@keyframes logo-greeting{0%,to{transform:rotate(0)}25%{transform:rotate(-2deg)}60%{transform:rotate(2deg)}}@media (max-width:550px){.portfolio{column-gap:0}.portfolio figure{margin:0}}@media (prefers-reduced-motion:reduce){.site-menu,.brand-header .brand-logo img,.brand-transition img{animation:none}.hero-copy .session-button{transition:none}.hero-copy .session-button:hover{transform:none}}.hero h1{letter-spacing:-1.5px;font-family:Playfair Display,Georgia,serif;font-size:clamp(50px,6vw,88px);font-style:italic;font-weight:500}.hero-session{text-align:center;width:100%;margin-top:20px}.hero-session .button{margin-top:0}.hero-signature{width:220px;height:auto;margin:20px auto 0;display:block}.portfolio{background:#b79c67;column-gap:1px}.portfolio figure{margin-bottom:1px}.quote-panel{background:#f1e7d5;border:1px solid #b79c67;margin:22px 0;padding:22px}.quote-panel h3{margin-top:10px}.location-note{background:#f1e7d5;border-left:2px solid #b79c67;padding:14px;font-size:14px}.event-rates h2{letter-spacing:-1px;font-size:38px}.event-rates .instagram-link{margin-left:20px}.session-locations{border-bottom:1px solid var(--line);padding:20px 0;font-size:15px}.booking-faq{margin:45px 0}.booking-faq h2{font-size:38px}.booking-faq details{border-top:1px solid #b79c67;padding:18px 0}.booking-faq summary{cursor:pointer;font-size:18px;font-weight:500}.booking-faq details p{max-width:800px}.email-settings{border:1px solid var(--line);background:#fcfaf6;margin:20px 0;padding:18px}.email-settings summary{cursor:pointer;font-weight:500}.email-settings pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#eee8dd;padding:16px;font-size:14px}.email-settings dd{margin:0 0 12px}.email-settings dt{font-weight:600}.record textarea{min-height:80px}.brand-transition img{animation:.28s ease-out both logo-arrive}@media (max-width:550px){.portfolio{column-gap:1px}.portfolio figure{margin-bottom:1px}.hero-signature{width:185px}.event-rates .instagram-link{margin:16px 0 0;display:flex}.hero h1{font-size:54px}}@media (prefers-reduced-motion:reduce){.brand-transition img{animation:none}}.hero h1{letter-spacing:-1px;font-family:Cormorant Garamond,Georgia,serif;line-height:1.05}.hero h1 em{font-style:italic}.client-contact-links{flex-wrap:wrap;gap:18px;margin:12px 0;display:flex}.client-contact-links a{color:#806331;text-underline-offset:4px}.portfolio{column-rule:1px solid #b79c67;background:0 0}.portfolio figure{border-bottom:1px solid #b79c67;margin-bottom:0}.portfolio:has(>figure:only-child){columns:1;column-rule:none;max-width:720px;margin-inline:auto}.filters button{color:#806331;-webkit-appearance:none;appearance:none;border-color:#b79c67}.filters button:hover{color:#59411d;background:#eee0c2}.filters button.active{color:#ead7a8;background:#242322;border-color:#b79c67}.service-grid h3{color:#806331}
