@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:wght@400;500;600&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap";:root{--paper:#f4efe8;--paper-deep:#e9e0d5;--ink:#24231f;--muted:#777169;--line:#cfc5b8;--rose:#c98477;--rose-light:#e4b3a5;--lime:#c7ca8c;--white:#fffdfa;--sans:"DM Sans", Arial, sans-serif;--serif:"Playfair Display", Georgia, serif;--mono:"DM Mono", "Courier New", monospace;font:16px/1.5 var(--sans);color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-color:var(--rose) var(--paper-deep);scrollbar-width:thin}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:var(--paper-deep);border-left:1px solid var(--line)}::-webkit-scrollbar-thumb{background:var(--rose);border:3px solid var(--paper-deep);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--ink)}::-webkit-scrollbar-corner{background:var(--paper-deep)}body{min-width:320px;margin:0;overflow-x:hidden}body.menu-open{overflow:hidden}img{max-width:100%;display:block}a{color:inherit}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.section-shell{width:min(1220px,100% - 64px);margin-inline:auto}.site-header{z-index:10;grid-template-columns:1fr auto 1fr;align-items:center;gap:32px;width:min(1360px,100% - 64px);height:104px;margin:0 auto;transition:height .35s,background-color .35s;display:grid;position:relative}.site-header.is-scrolled{height:76px}.wordmark{width:fit-content;color:var(--ink);letter-spacing:-.06em;align-items:center;gap:8px;font-size:18px;font-weight:600;text-decoration:none;display:inline-flex}.brand-logo{aspect-ratio:816/951;object-fit:contain;flex-shrink:0;width:52px;height:auto;display:block}.brand-name{font:italic 14px var(--serif);letter-spacing:-.03em}.main-nav{justify-self:center;gap:28px;display:flex}.main-nav a,.header-cta,.footer-links a,.booking-contact a{letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:500;text-decoration:none}.main-nav a{color:var(--muted);transition:color .25s}.main-nav a:hover,.footer-links a:hover{color:var(--rose)}.main-nav a span{color:var(--rose);font:10px var(--mono);vertical-align:top;margin-left:4px}.header-cta{border:1px solid var(--ink);white-space:nowrap;border-radius:100px;justify-self:end;padding:12px 17px;transition:background-color .25s,color .25s,transform .25s}.header-cta span{margin-left:8px;font-size:16px}.header-cta:hover{color:var(--white);background:var(--ink);transform:translateY(-2px)}.menu-toggle{display:none}.hero{grid-template-columns:minmax(0,1fr) minmax(390px,.8fr);align-items:center;gap:90px;min-height:665px;padding:42px 0 92px;display:grid}.eyebrow{color:var(--muted);font:10px var(--mono);letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:9px;margin:0;display:flex}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:500}h1,h2{letter-spacing:-.07em}h1,h2,h3,.image-stamp{font-family:var(--serif)}h1 i,h2 i,h3 i,.gallery-note i{font-weight:500}h1{max-width:760px;margin:26px 0 27px;font-size:clamp(4.3rem,8.6vw,8.2rem);line-height:.9}h1 i{color:var(--rose)}.hero-intro{max-width:380px;color:var(--muted);margin-bottom:30px;font-size:15px;line-height:1.65}.hero-actions{align-items:center;gap:26px;display:flex}.button{letter-spacing:.03em;text-transform:uppercase;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:25px;min-height:50px;padding:0 20px 0 24px;font-size:11px;font-weight:600;text-decoration:none;transition:transform .25s,background-color .25s,color .25s,border-color .25s;display:inline-flex}.button span{font-size:18px;font-weight:400;line-height:1}.button-dark{color:var(--white);background:var(--ink);border-radius:3px 24px}.button-dark:hover{color:var(--ink);background:var(--lime);transform:translateY(-3px)rotate(-1deg)}.button-outline{color:var(--ink);border-color:var(--ink);border-radius:24px 3px}.button-outline:hover{color:var(--white);background:var(--rose);border-color:var(--rose);transform:translateY(-3px)}.text-link{border-bottom:1px solid var(--ink);color:var(--ink);letter-spacing:.04em;text-transform:uppercase;padding-bottom:4px;font-size:11px;font-weight:600;text-decoration:none;transition:color .25s,border-color .25s}.text-link span{margin-left:8px;font-size:17px}.text-link:hover{color:var(--rose);border-color:var(--rose)}.hero-meta{color:var(--muted);font:9px var(--mono);letter-spacing:.08em;text-transform:uppercase;gap:25px;margin-top:72px;display:flex}.hero-meta span+span{position:relative}.hero-visual{justify-self:end;width:min(100%,500px);position:relative}.hero-image-frame{background:var(--rose-light);border-radius:48% 48% 4px 4px/35% 35% 4px 4px;width:100%;height:560px;position:relative;overflow:hidden}.hero-image-frame:after{content:"";pointer-events:none;background:#24231f14;transition:background-color .5s;position:absolute;inset:0}.hero-image-frame:hover:after{background:#24231f00}.hero-image-frame img{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.hero-image-frame:hover img{transform:scale(1.045)}.image-stamp{z-index:1;border:1px solid var(--ink);background:var(--lime);width:91px;height:91px;color:var(--ink);text-align:center;border-radius:50%;place-content:center;font-size:13px;line-height:1.05;display:grid;position:absolute;bottom:22px;right:21px;transform:rotate(11deg)}.image-stamp strong{font-size:20px;font-weight:500;position:relative;top:4px}.ticker{border-block:1px solid var(--line);background:var(--lime);color:var(--ink);overflow:hidden}.ticker-track{align-items:center;gap:31px;width:max-content;min-height:50px;animation:30s linear infinite ticker;display:flex}.ticker-track span{font:11px var(--mono);letter-spacing:.1em;text-transform:uppercase}.ticker-track b{color:var(--rose);font-size:17px;font-weight:400}.services{padding:150px 0 160px}.section-heading{grid-template-columns:minmax(300px,1fr) minmax(220px,.45fr);align-items:end;column-gap:90px;margin-bottom:62px;display:grid}.section-heading .eyebrow{grid-column:1/-1;margin-bottom:20px}.section-heading h2,.atelier-copy h2,.gallery-heading h2,.booking-intro h2{margin:0;font-size:clamp(3.2rem,6vw,5.6rem);line-height:.92}.section-heading h2 i,.atelier-copy h2 i,.gallery-heading h2 i,.booking-intro h2 i{color:var(--rose)}.section-heading>p:last-child{max-width:275px;color:var(--muted);margin:0 0 4px;font-size:14px;line-height:1.65}.service-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.service-card{flex-direction:column;min-height:365px;padding:20px;display:flex;position:relative;overflow:hidden}.service-card-featured{color:var(--white);background:var(--rose);border-radius:3px 62px 3px 3px}.service-card-outline{border:1px solid var(--ink);border-radius:62px 3px 3px}.service-card-accent{background:var(--lime);border-radius:3px 3px 62px}.card-topline,.card-bottomline{font:9px var(--mono);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;display:flex}.service-card-featured .card-topline span:last-child{margin-right:12px}.service-card-outline .card-topline span:first-child{transform:translate(7px)}.service-card p{max-width:200px;color:inherit;opacity:.72;margin:0;font-size:12px;line-height:1.55}.service-card-icon{font:47px/1 var(--serif);margin:38px 0 17px}.icon-sun{color:var(--lime)}.icon-wave{color:var(--rose);display:block;transform:none}.icon-star{color:var(--rose)}.service-card h3{letter-spacing:-.06em;margin:0 0 15px;font-size:31px;line-height:.88}.service-card h3 i{font-size:34px;font-weight:500}.card-bottomline{opacity:.75;border-top:1px solid;align-items:center;margin-top:auto;padding-top:23px}.card-bottomline strong{font-weight:500}.service-card-photo{border-radius:3px 3px 62px;padding:0}.service-card-photo img{object-fit:cover;width:100%;height:100%;transition:transform .7s}.service-card-photo:hover img{transform:scale(1.06)}.service-photo-overlay{color:var(--white);font:9px var(--mono);letter-spacing:.08em;text-transform:uppercase;position:absolute;inset:20px 17px auto auto}.atelier{grid-template-columns:minmax(360px,.85fr) minmax(350px,1fr);align-items:center;gap:clamp(70px,12vw,170px);padding:0 0 160px;display:grid}.atelier-art{width:min(100%,430px);position:relative}.atelier-image-wrap{background:var(--paper-deep);border-radius:5px 45%;height:530px;overflow:hidden}.atelier-image-wrap img{object-fit:cover;object-position:55% center;width:100%;height:100%;transition:transform .8s}.atelier-art:hover .atelier-image-wrap img{transform:scale(1.05)}.atelier-circle{border:1px solid var(--ink);background:var(--lime);width:140px;height:140px;font:13px/1.1 var(--serif);text-align:center;border-radius:50%;place-content:center;gap:2px;display:grid;position:absolute;top:42%;right:-63px;transform:rotate(11deg)}.atelier-circle span:nth-child(2){color:var(--rose)}.atelier-copy{max-width:480px}.atelier-copy .eyebrow{margin-bottom:25px}.large-copy{color:var(--muted);margin:32px 0 29px;font-size:18px;line-height:1.6}.atelier-facts{border-top:1px solid var(--line);color:var(--muted);font:10px var(--mono);letter-spacing:.05em;text-transform:uppercase;gap:12px;margin-top:48px;padding-top:20px;display:grid}.atelier-facts b{color:var(--rose);margin-right:17px;font-weight:400}.gallery{padding:30px 0 160px}.gallery-heading{margin-bottom:53px;position:relative}.gallery-heading .eyebrow{margin-bottom:22px}.circle-link{border:1px solid var(--ink);border-radius:50%;place-items:center;width:58px;height:58px;font-size:24px;text-decoration:none;transition:color .25s,background-color .25s,transform .25s;display:grid;position:absolute;bottom:0;right:5%}.circle-link:hover{color:var(--white);background:var(--rose);transform:rotate(45deg)}.gallery-grid{grid-template-rows:420px;grid-template-columns:1.25fr .85fr .7fr;gap:14px;display:grid}.gallery-item{background:var(--paper-deep);min-width:0;margin:0;position:relative;overflow:hidden}.gallery-item-wide{border-radius:4px 4px 4px 90px}.gallery-item-tall{border-radius:90px 4px 4px}.gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform .8s,opacity .5s}.gallery-item:hover img{opacity:.82;transform:scale(1.06)}.gallery-note{background:var(--rose);border-radius:4px 4px 90px;flex-direction:column;justify-content:space-between;padding:19px 19px 23px;display:flex}.gallery-note p{font:29px/.97 var(--serif);letter-spacing:-.06em;margin:0}.gallery-note i{color:var(--lime)}.booking{background:var(--paper-deep);border-radius:4px 120px 4px 4px;grid-template-columns:.9fr 1fr;gap:110px;padding:78px 8%;display:grid}.booking-intro .eyebrow{margin-bottom:25px}.booking-intro>p:not(.eyebrow){max-width:310px;color:var(--muted);margin:30px 0 46px;font-size:14px;line-height:1.65}.booking-contact{border-top:1px solid var(--line);color:var(--muted);font:10px var(--mono);letter-spacing:.06em;text-transform:uppercase;flex-direction:column;gap:8px;padding-top:18px;display:flex}.booking-contact a{width:fit-content;color:var(--ink);border-bottom:1px solid var(--ink);padding-bottom:3px}.booking-contact a span{color:var(--rose);margin-left:8px;font-size:16px}.booking-form{align-content:center;gap:9px;display:grid}.booking-form label{color:var(--muted);font:10px var(--mono);letter-spacing:.07em;text-transform:uppercase;margin-top:9px}.booking-form label span{color:var(--rose)}.booking-form label .optional{color:var(--muted);opacity:.7}.booking-form input,.booking-form select,.booking-form textarea{width:100%;color:var(--ink);border:0;border-bottom:1px solid var(--line);resize:vertical;background:0 0;border-radius:0;outline:none;padding:11px 0;font-size:14px;transition:border-color .25s}.booking-form input::placeholder,.booking-form textarea::placeholder{color:#a69d93}.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus{border-color:var(--rose)}.booking-form select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%2324231f' stroke-width='1.3'/%3E%3C/svg%3E");background-position:right 2px center;background-repeat:no-repeat}.form-row{grid-template-columns:1fr 1fr;gap:24px;display:grid}.form-submit{width:fit-content;margin-top:24px}.form-feedback{color:#597047;opacity:0;min-height:20px;margin:11px 0 0;font-size:12px;line-height:1.45;transition:opacity .3s,transform .3s;transform:translateY(5px)}.form-feedback.is-visible{opacity:1;transform:translateY(0)}.site-footer{padding-top:115px}.footer-main{grid-template-columns:1.3fr 1fr .75fr auto;align-items:start;gap:30px;padding-bottom:83px;display:grid}.wordmark-footer{font-size:22px}.wordmark-footer .brand-logo{width:68px}.wordmark-footer .brand-name{font-size:16px}.footer-main p{color:var(--muted);font:17px/1.15 var(--serif)}.footer-links{gap:10px;display:grid}.footer-links a{font-size:10px}.social-links{gap:9px;display:flex}.social-links a{border:1px solid var(--line);border-radius:50%;place-items:center;width:34px;height:34px;transition:background-color .25s,border-color .25s,transform .25s;display:grid}.social-links a:hover{background:var(--lime);border-color:var(--lime);transform:translateY(-3px)}.social-links img{width:16px;height:16px}.footer-bottom{border-top:1px solid var(--line);color:var(--muted);font:9px var(--mono);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;gap:20px;padding-block:17px;display:flex}.footer-bottom a{color:inherit;text-decoration:none}.footer-bottom a:hover{color:var(--rose)}.reveal{opacity:0;transition:opacity .75s,transform .75s cubic-bezier(.2,.7,.2,1);transform:translateY(22px)}.reveal.is-visible{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:80ms}.reveal-delay-2{transition-delay:.15s}.reveal-delay-3{transition-delay:.22s}.reveal-delay-4{transition-delay:.29s}@keyframes ticker{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes menuIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=1050px){.section-shell,.site-header{width:min(100% - 40px,780px)}.hero{grid-template-columns:minmax(0,1fr) minmax(300px,.85fr);gap:45px}.hero-image-frame{height:480px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card{min-height:330px}.atelier{grid-template-columns:minmax(280px,.85fr) minmax(0,1fr);gap:50px}.gallery-grid{grid-template-rows:380px 220px;grid-template-columns:1.1fr .9fr}.gallery-item-tall{grid-row:span 2}.gallery-note{border-radius:4px 4px 50px;grid-area:2/1}.booking{gap:55px;padding-inline:50px}.footer-main{grid-template-columns:1.3fr 1fr .6fr auto}}@media (width<=700px){.section-shell,.site-header{width:calc(100% - 40px)}.site-header{grid-template-columns:1fr auto;height:82px}.site-header.is-scrolled{height:70px}.main-nav{background:var(--paper);border:1px solid var(--line);width:100%;box-shadow:10px 10px 0 var(--lime);border-radius:3px 3px 30px 30px;flex-direction:column;gap:17px;padding:30px 20px;display:none;position:absolute;top:72px;right:0}.main-nav.is-open{animation:.3s both menuIn;display:flex}.main-nav a{color:var(--ink);font-size:13px}.main-nav a span{float:right}.header-cta{display:none}.menu-toggle{color:var(--ink);cursor:pointer;background:0 0;border:0;align-items:center;gap:9px;padding:7px 0;display:inline-flex}.menu-toggle-label{font:10px var(--mono);letter-spacing:.08em;text-transform:uppercase}.menu-toggle-lines{gap:5px;width:23px;display:grid}.menu-toggle-lines i{background:var(--ink);height:1px;transition:transform .25s;display:block}.menu-toggle[aria-expanded=true] .menu-toggle-lines i:first-child{transform:translateY(3px)rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-toggle-lines i:last-child{transform:translateY(-3px)rotate(-45deg)}.hero{flex-direction:column;align-items:stretch;gap:58px;min-height:auto;padding:62px 0 74px;display:flex}h1{margin:21px 0 24px;font-size:clamp(4rem,19vw,6rem)}.hero-intro{max-width:315px;font-size:14px}.hero-actions{flex-direction:column;align-items:flex-start;gap:20px}.hero-meta{flex-direction:column;gap:8px;margin-top:42px}.hero-visual{width:calc(100% - 19px);margin-right:19px}.hero-image-frame{border-radius:48% 48% 4px 4px/25% 25% 4px 4px;height:390px}.ticker-track{gap:22px;min-height:44px}.ticker-track span{font-size:9px}.services{padding:94px 0 100px}.section-heading{margin-bottom:40px;display:block}.section-heading .eyebrow{margin-bottom:19px}.section-heading h2,.atelier-copy h2,.gallery-heading h2,.booking-intro h2{font-size:clamp(3.3rem,16vw,5rem)}.section-heading>p:last-child{max-width:310px;margin-top:24px}.service-grid{grid-template-columns:1fr 1fr;gap:9px}.service-card{min-height:280px;padding:15px}.service-card-icon{margin:24px 0 13px;font-size:37px}.service-card h3,.service-card h3 i{font-size:26px}.service-card p{font-size:11px}.card-topline,.card-bottomline,.service-photo-overlay{font-size:8px}.service-card-featured{border-radius:3px 42px 3px 3px}.service-card-outline{border-radius:42px 3px 3px}.service-card-photo,.service-card-accent{border-radius:3px 3px 42px}.atelier{flex-direction:column;align-items:stretch;gap:63px;padding-bottom:105px;display:flex}.atelier-art{width:calc(100% - 27px);margin-left:27px}.atelier-image-wrap{border-radius:4px 42%;height:410px}.atelier-circle{width:112px;height:112px;font-size:11px;right:-7px}.large-copy{margin:26px 0;font-size:16px}.atelier-facts{margin-top:37px}.gallery{padding-bottom:100px}.gallery-heading{margin-bottom:35px}.circle-link{width:50px;height:50px;bottom:1px;right:0}.gallery-grid{grid-template-rows:240px 155px;grid-template-columns:1fr 1fr;gap:9px;display:grid}.gallery-item-wide{border-radius:4px 4px 4px 50px;grid-column:1/-1}.gallery-item-tall{border-radius:45px 4px 4px;grid-area:2/1}.gallery-note{border-radius:4px 4px 50px;grid-area:2/2;padding:14px}.gallery-note p{font-size:23px}.booking{border-radius:4px 65px 4px 4px;flex-direction:column;gap:52px;padding:58px 25px 45px;display:flex}.booking-intro>p:not(.eyebrow){margin:23px 0 35px}.form-row{grid-template-columns:1fr;gap:0}.form-submit{width:100%;margin-top:23px}.site-footer{padding-top:82px}.footer-main{grid-template-columns:1fr auto;gap:30px 20px;padding-bottom:52px;display:grid}.wordmark-footer{grid-column:1/-1}.footer-main p{margin:0;font-size:16px}.footer-links{justify-self:end}.social-links{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:8px;padding-block:15px;font-size:8px}}
