@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Italiana&display=swap";:root{--paper:#fff;--ink:#222;--brown:#c11797;--line:#e9dce6;--sage:#fff0fb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{background:var(--paper);color:var(--ink);margin:0;font-family:DM Sans,Arial,sans-serif;font-size:15px;line-height:1.7}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}a,button{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}:is(a:focus-visible,button:focus-visible){outline-offset:6px;outline:2px solid #c11797}img{object-fit:cover;width:100%;height:100%;display:block}.announcement{text-align:center;letter-spacing:.06em;background:#ffe9f9;padding:8px 20px;font-size:11px}.announcement span{letter-spacing:.16em;margin-left:45px;font-size:9px}header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:24px 6%;display:flex}.brand{text-align:center;white-space:nowrap;font-family:Italiana,Georgia,serif;font-size:34px;line-height:1}.brand span{letter-spacing:.4em;margin-top:10px;font-family:Arial,sans-serif;font-size:9px;display:block}nav{align-items:center;gap:31px;font-size:12px;display:flex}.button{background:var(--brown);color:#fff;letter-spacing:.02em;justify-content:space-between;align-items:center;gap:30px;padding:17px 25px;font-size:12px;transition:background .2s,transform .2s;display:inline-flex}.button:hover{background:#9c117b;transform:translateY(-2px)}.button.small{padding:13px 20px}.mobile-menu{display:none}.hero{grid-template-columns:1fr 1fr;min-height:680px;display:grid}.hero-copy{padding:80px 10% 45px 12%}.eyebrow{letter-spacing:.21em;margin:0 0 22px;font-size:10px;font-weight:500}h1,h2{margin:0 0 28px;font-family:Italiana,Georgia,serif;font-weight:400;line-height:1.08}h1{letter-spacing:-.04em;font-size:clamp(60px,6.2vw,100px)}h1 em,h2 em{color:var(--brown);font-family:Georgia,serif;font-size:.88em;font-weight:400}.intro{color:#555;max-width:380px;margin:0 0 30px;font-size:14px;line-height:1.85}.text-link{border-bottom:1px solid #ed26bd;padding-bottom:5px;font-size:12px;display:inline-block}.hero-copy>.text-link{width:max-content;margin-top:21px;display:block}.hero-note{color:#5c5159;align-items:center;gap:17px;margin-top:40px;font-size:10px;line-height:1.7;display:flex}.sparkle{color:#ed26bd;font-size:40px}.hero-image{margin:30px 45px 30px 0;position:relative;overflow:hidden}.hero-image img{object-position:center 48%}.photo-tag{background:#fffffff2;padding:22px 27px;font-family:Italiana,Georgia,serif;font-size:26px;line-height:1.2;position:absolute;bottom:28px;left:28px}.photo-tag i{font-family:Georgia,serif;font-size:20px}.vertical{writing-mode:vertical-rl;letter-spacing:.25em;color:#fff;font-size:9px;position:absolute;top:35px;right:10px}.ribbon{background:var(--sage);letter-spacing:.15em;justify-content:space-around;align-items:center;gap:20px;padding:24px 5%;font-size:10px;display:flex}.ribbon b{font-size:22px;font-weight:400}.section{padding:100px 8%}.section-head{justify-content:space-between;align-items:end;gap:40px;margin-bottom:48px;display:flex}.section-head p:not(.eyebrow){color:#61545e;margin-bottom:8px;font-size:13px}h2{letter-spacing:-.025em;margin-bottom:0;font-size:clamp(40px,4vw,62px)}.service-layout{grid-template-columns:1fr 1.6fr;gap:10%;display:grid}.tabs button{text-align:left;cursor:pointer;border:0;border-bottom:1px solid var(--line);background:0 0;justify-content:space-between;align-items:center;gap:14px;width:100%;padding:22px 0;font-family:Georgia,serif;font-size:21px;display:flex}.tabs button small{color:#756470;font-family:Arial;font-size:10px}.tabs button span{margin-left:auto}.tabs button.active{color:var(--brown);border-bottom:2px solid var(--brown)}.tabs>p{color:#63515e;margin-top:30px;font-size:11px;line-height:2}.tabs>p a{text-decoration:underline}.price-row{border-bottom:1px solid var(--line);justify-content:space-between;gap:20px;padding:17px 0;display:flex}h3{margin:0;font-family:Georgia,serif;font-size:19px;font-weight:400;line-height:1.4}.price-row p{color:#6b5965;margin:4px 0 0;font-size:11px}.price-row>span{white-space:nowrap;font-size:13px}.price-menu>.text-link{margin-top:26px}.policy{color:#63515e;font-size:12px}.about{background:#fff2fb;grid-template-columns:1fr 1fr;align-items:center;display:grid}.portrait{background:#fce3f6;height:670px;padding:65px 12% 65px 16%}.portrait img{object-position:center 33%;border-radius:48% 48% 0 0}.about-copy{padding:60px 15% 60px 13%}.about-copy h2{margin-bottom:27px}.about-copy>p:not(.eyebrow){color:#5c5058;font-size:13px;line-height:1.9}.signature{color:var(--brown);margin:25px 0;font-family:Georgia,serif;font-size:25px;font-style:italic;display:block}.gallery-grid{grid-template-columns:1fr 1fr;gap:32px;display:grid}figure{margin:0}figure img{object-position:center 45%;height:520px}figcaption{justify-content:space-between;align-items:center;gap:15px;margin-top:20px;display:flex}figcaption span{font-family:Georgia,serif;font-size:19px}figcaption small{letter-spacing:.15em;color:#6b5965;font-size:8px}.visit{background:var(--sage);grid-template-columns:1fr 1fr;gap:15%;padding:90px 12%;display:grid}.visit h2{margin-bottom:25px}.visit p,.visit address{font-size:13px;font-style:normal}.visit address{margin:10px 0 25px}.visit-details>div{border-bottom:1px solid #eccce4;gap:25px;padding:20px 0;display:flex}.visit-details>div>span{color:#c11797;font-size:10px}.visit-details p{color:#5c5058;margin:6px 0;line-height:1.8}.visit-details .button{margin-top:30px}.last-call{text-align:center;background:#fff0fb;padding:90px 20px}.last-call .button{min-width:210px;margin-top:30px}.last-call>p:last-child{color:#6c5666;font-size:11px}footer{grid-template-columns:1fr 1fr 1fr;align-items:start;gap:35px;padding:55px 8% 28px;display:grid}footer .brand{justify-self:start}footer p{color:#63535f;margin:0;font-size:12px}footer div{flex-direction:column;gap:5px;font-size:12px;display:flex}footer small{border-top:1px solid var(--line);color:#786371;grid-column:1/-1;padding-top:22px;font-size:9px}.sticky-book{display:none}a:hover.text-link{color:var(--brown)}@media (min-width:1600px){main,header,footer{max-width:1600px;margin:auto}}@media (max-width:1000px){nav{gap:18px}.hero-copy{padding:60px 9%}.hero-image{margin-right:25px}.hero{min-height:620px}.ribbon{font-size:8px}.section{padding:75px 6%}.service-layout{gap:6%}.portrait{height:580px;padding:50px 9%}.about-copy{padding:40px 10%}.visit{gap:8%;padding:70px 8%}.photo-tag{font-size:23px}figcaption{flex-direction:column;align-items:start;gap:5px}}@media (max-width:700px){html{scroll-padding-top:20px}.announcement{font-size:9px}.announcement span{display:none}header{padding:20px 6%;position:relative}.brand{font-size:29px}.brand span{font-size:8px}.mobile-menu{background:0 0;border:0;font-size:12px;display:block}nav{background:var(--paper);z-index:10;align-items:stretch;padding:20px 6%;display:none;position:absolute;top:89px;left:0;right:0;box-shadow:0 10px 20px #0001}nav.opened{flex-direction:column;gap:20px;display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:50px 7% 30px}h1{font-size:66px}.intro{max-width:350px;font-size:13px}.hero-note{margin-top:28px}.hero-image{height:500px;margin:0 6% 30px}.hero-image img{object-position:center 45%}.ribbon{flex-wrap:wrap;gap:15px;padding:20px 5%;font-size:8px}.ribbon span{text-align:center;width:40%}.ribbon b{display:none}.section{padding:65px 7%}.section-head{margin-bottom:28px;display:block}.section-head>p,.section-head>.text-link{margin-top:20px}.eyebrow{margin-bottom:17px;font-size:9px}h2{font-size:44px}.service-layout{display:block}.tabs{margin-bottom:25px}.tabs button{padding:16px 0;font-size:19px}.tabs>p{margin-top:18px}.price-row{padding:18px 0}.about{grid-template-columns:1fr}.portrait{height:500px;padding:40px 15%}.about-copy{padding:50px 8%}.gallery-grid{grid-template-columns:1fr;gap:30px}figure img{height:460px}figcaption{flex-direction:row;align-items:center}figcaption span{font-size:17px}figcaption small{font-size:7px}.visit{grid-template-columns:1fr;gap:30px;padding:60px 8%}.visit-details .button{gap:12px;font-size:11px;display:flex}.last-call{padding:65px 7%}footer{grid-template-columns:1fr 1fr;gap:25px;padding:45px 7% 85px}footer p{font-size:10px}footer div{flex-flow:wrap;grid-column:1/-1;gap:20px;font-size:10px}.sticky-book{z-index:20;text-align:center;background:var(--brown);color:#fff;padding:15px 20px;font-size:12px;display:block;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -3px 15px #0001}.hero-copy .button{width:100%;max-width:350px}.photo-tag{padding:18px 20px;bottom:20px;left:20px}.last-call h2{font-size:43px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}:root{--pink:#ed26bd;--pink-dark:#c11797}header{background:#fff;padding-top:12px;padding-bottom:12px}.brand{width:118px;height:118px;display:block}.brand img{object-fit:contain}.announcement{color:#fff;background:#222}.announcement span{color:#ff8ce1}.button,.sticky-book{background:var(--pink);color:#222;font-weight:600}.button:hover{color:#222;background:#ff63da}.text-link{border-bottom-color:var(--pink)}.ribbon{border-block:1px solid #f7c4ec}.ribbon b{color:var(--pink)}h1 em,h2 em{color:var(--pink-dark)}footer .brand{width:140px;height:140px}.tabs button.active{color:var(--pink-dark);border-bottom-color:var(--pink)}.visit-details>div>span{color:var(--pink-dark)}@media (max-width:700px){header{padding-top:8px;padding-bottom:8px}.brand{width:94px;height:94px}nav{top:110px}footer .brand{width:115px;height:115px}.sticky-book{color:#222}}.contact-email{overflow-wrap:anywhere;width:max-content;max-width:100%;margin-top:20px;display:block}footer div a{overflow-wrap:anywhere}@media (min-width:701px) and (max-width:1100px){nav{gap:12px;font-size:11px}.button.small{padding:12px 14px}}
