@charset "UTF-8";
:root{--base:#eee7e7;--paper:#f7f5f1;--ink:#302528;--plum:#67233d;--muted:#72686b;--line:#dcd4d6;--rose:#ebcfd7;--silver:#dfdadd;--serif:"Bodoni Moda",Georgia,serif;--sans:"DM Sans",Arial,sans-serif;--gutter:clamp(24px,5vw,90px);--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box} [hidden]{display:none!important}
html{scroll-behavior:smooth;scroll-padding-top:110px} body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.65 var(--sans);font-optical-sizing:auto} body.modal-open{overflow:hidden}
button,input,textarea{font:inherit} button,a{-webkit-tap-highlight-color:transparent} button{cursor:pointer;color:inherit;border:0} button:disabled{cursor:not-allowed;opacity:.4} a{color:inherit;text-decoration:none} img{display:block;max-width:100%} h1,h2,h3,p,figure{margin:0} h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.055em;line-height:1.06} h3{line-height:1.3} ::selection{background:var(--rose);color:var(--plum)} :focus-visible{outline:3px solid #ac4164;outline-offset:5px} .skip-link{position:fixed;left:20px;top:-80px;z-index:200;background:var(--rose);padding:15px}.skip-link:focus{top:10px}
/* The navigation leaves the portrait and the main invitation in charge. */
.site-header{height:100px;position:sticky;top:0;z-index:30;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:28px;background:var(--paper);transition:box-shadow .25s var(--ease)}
.site-header.scrolled{box-shadow:0 1px 0 #30252818}.wordmark{font:500 60px/.85 var(--serif);letter-spacing:-.075em;display:inline-flex;align-items:baseline;color:var(--plum)} .brand-dot{color:var(--plum)}.wordmark small{font:400 12px/1.25 var(--sans);letter-spacing:0;margin-left:20px;color:var(--muted)}
.desktop-nav{display:flex;gap:38px;font-size:14px}.desktop-nav a{position:relative;padding:10px 0}.desktop-nav a:after{content:"";position:absolute;bottom:6px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}.desktop-nav a:hover:after{transform:scaleX(1)}
.header-actions{display:flex;align-items:center;gap:18px}.header-book{display:flex;gap:25px;align-items:center;background:none;border-bottom:1px solid var(--plum);padding:10px 0;color:var(--plum);font-size:14px;font-weight:500}.header-book span{font-size:23px;line-height:1}.menu-toggle.icon-button{display:none}.scroll-progress{height:2px;width:100%;position:absolute;bottom:0;left:0;background:var(--plum);transform:scaleX(var(--page-progress,0));transform-origin:left;pointer-events:none}.mobile-nav{position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:22px var(--gutter) 32px;box-shadow:0 20px 30px #30252812}.mobile-nav a{display:block;font-family:var(--serif);font-size:32px;padding:13px 0}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:16px 24px;min-height:56px;border-radius:999px;font-size:14px;font-weight:500;line-height:1.3;transition:background .25s var(--ease),color .25s var(--ease),transform .3s var(--ease)}.button>span{font-size:23px;font-weight:400;line-height:1;transition:transform .3s var(--ease)}.button:hover>span{transform:translate(2px,-2px)}.button:active{transform:scale(.98)}.button-dark{background:var(--plum);color:var(--paper)}.button-dark:hover{background:#4d1429}.button-rose{background:var(--rose);color:var(--plum)}.button-rose:hover{background:#f4e1e7}.button-light{background:var(--paper);color:var(--ink)}
/* Portrait-led opening: the original image is the subject, not a background texture. */
.hero{position:relative;display:grid;grid-template-columns:52% 48%;min-height:700px;height:calc(100svh - 100px);max-height:920px;isolation:isolate;overflow:hidden}
.hero-copy{padding:clamp(65px,7.2vw,120px) 28px 110px var(--gutter);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;position:relative;z-index:2}
.hero h1{font-size:clamp(100px,10.3vw,172px);line-height:.95;letter-spacing:-.075em;color:var(--plum);margin-left:-.055em;margin-bottom:36px;font-variation-settings:"opsz" 96}
.title-line{display:block;white-space:nowrap;padding:.06em .08em .19em;margin:-.06em -.08em -.19em;overflow:hidden}.title-line>span{display:block}
.hero-description{font-size:clamp(16px,1.25vw,20px);line-height:1.65;max-width:420px;color:#5e5156;margin-bottom:30px}.hero-buttons{display:flex;align-items:center;gap:27px}.hero-cta{padding:9px 10px 9px 26px;min-height:64px;gap:38px;font-size:15px}.hero-cta .button-icon{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#ffffff17;font-size:27px}.hero-work-link{justify-self:start;font-size:14px;line-height:1.3;padding:15px 0;border-bottom:1px solid #a79a9f}.hero-work-link:hover{color:var(--plum);border-color:var(--plum)}.hero-location{font-size:12px;color:var(--muted);margin-top:34px}.hero-location span{padding:0 8px}
.hero-portrait{height:100%;min-width:0;position:relative;background:#d0c5be;overflow:hidden;perspective:1100px}.portrait-depth{position:absolute;inset:-12px;transform:rotateX(var(--portrait-x,0deg)) rotateY(var(--portrait-y,0deg));transition:transform .9s var(--ease);transform-style:preserve-3d}.hero-image{width:100%;height:100%;object-fit:cover;object-position:62% 34%;transform:translateY(calc(var(--hero-scroll,0)*22px)) scale(1.035);filter:saturate(.94);}
.hero-portrait:after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(0deg,#201a1c80,transparent);pointer-events:none}.hero-portrait figcaption{position:absolute;z-index:2;left:44px;bottom:38px;color:#fff;display:flex;flex-direction:column;gap:4px}.portrait-name{font:400 41px/1.2 var(--serif);letter-spacing:-.035em}.portrait-role{font-size:12px;color:#f3eaea}.motion-control{position:absolute;bottom:40px;right:32px;z-index:3;width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:#332b2f50;border:1px solid #fff6;color:#fff;backdrop-filter:blur(8px)}.pause-icon{font-size:18px;line-height:1}.motion-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.hero-scroll{position:absolute;left:var(--gutter);bottom:30px;width:45px;height:45px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:22px;z-index:3}.hero-scroll:hover{background:var(--rose)}
.service-ribbon{display:grid;grid-template-columns:repeat(3,1fr);background:var(--plum);color:var(--paper);padding:0 var(--gutter)}.service-ribbon a{display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:16px;padding:26px 30px;border-right:1px solid #ffffff26}.service-ribbon a:first-child{padding-left:0}.service-ribbon a:last-child{padding-right:0;border-right:0}.service-ribbon span{font-size:23px;transition:transform .3s var(--ease)}.service-ribbon a:hover span{transform:translate(3px,-3px)}
/* Short, readable editorial sections. */
.section-label{font-size:14px;font-weight:500;line-height:1.5;margin-bottom:25px}.intro-section{padding:115px var(--gutter) 105px;max-width:1650px;margin:auto}.scroll-statement{max-width:1100px;font-size:clamp(45px,5.7vw,87px);line-height:1.15;letter-spacing:-.045em}.scroll-statement .word{color:#c3b6bd;transition:color .2s linear}.scroll-statement .word.lit{color:var(--ink)}.intro-bottom{display:grid;grid-template-columns:.7fr 1.3fr 1fr;align-items:center;gap:55px;margin-top:50px}.intro-signature{font:400 65px/1 var(--serif);letter-spacing:-.06em;color:var(--plum)}.intro-bottom p{font-size:15px;max-width:440px;color:var(--muted)}.text-link{display:inline-flex;align-items:center;gap:25px;background:none;padding:8px 0 12px;border-bottom:1px solid #ae9fa5;font-size:14px;font-weight:500;justify-self:start;line-height:1.5}.text-link span{font-size:22px;transition:transform .3s var(--ease)}.text-link:hover span{transform:translate(3px,-3px)}
.work-section{padding:95px 0 60px;background:#eee5e7;overflow:hidden}.work-heading{display:flex;align-items:end;justify-content:space-between;padding:0 var(--gutter);gap:35px;margin-bottom:40px}.work-heading h2{font-size:clamp(58px,6.3vw,96px)}.work-heading-side{display:flex;gap:42px;align-items:end;font-size:14px;color:var(--muted)}.gallery-controls{display:flex;gap:8px}.gallery-controls button{background:transparent;border:1px solid #bfaeb5;border-radius:50%;width:46px;height:46px;font-size:21px;transition:background .25s var(--ease),color .25s var(--ease)}.gallery-controls button:hover{background:var(--plum);color:var(--paper)}.gallery-controls button:disabled{opacity:.3}.gallery{display:flex;gap:32px;overflow-x:auto;scroll-snap-type:x mandatory;padding:24px var(--gutter) 38px;scrollbar-width:none;align-items:start;perspective:1500px;scroll-behavior:smooth}.gallery::-webkit-scrollbar{display:none}.work-card{flex:0 0 35.5%;min-width:0;scroll-snap-align:center;transform:translateY(var(--card-offset,0px)) rotateY(var(--card-rotation,0deg));transition:transform .18s linear}.work-card:nth-child(2){margin-top:65px}.gallery-image{width:100%;display:block;position:relative;padding:0;overflow:hidden;background:#d8cbcf;aspect-ratio:.8;text-align:left;transform:rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .5s var(--ease)}.gallery-image img{width:100%;height:100%;object-fit:cover;transform:scale(1.01);transition:transform .8s var(--ease)}.gallery-image:hover img{transform:scale(1.05)}.zoom-mark{position:absolute;bottom:20px;right:20px;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--paper);font-size:25px}.gallery figcaption{display:flex;align-items:baseline;justify-content:space-between;gap:15px;padding:19px 0;font-size:13px;color:var(--muted)}.gallery h3{font:500 18px/1.3 var(--sans);color:var(--ink);letter-spacing:-.02em}.work-footer{display:flex;align-items:center;justify-content:space-between;padding:0 var(--gutter);gap:30px}.work-footer p{font-size:12px;color:var(--muted)}
.services-section{display:grid;grid-template-columns:.85fr 1.15fr;padding:120px var(--gutter);gap:8vw;align-items:start}.service-editorial{position:sticky;top:130px}.service-photo{overflow:hidden;aspect-ratio:.77;position:relative}.service-photo img{width:100%;height:100%;object-fit:cover;transition:opacity .25s var(--ease)}.service-content h2{font-size:clamp(48px,5vw,78px)}.service-intro{font-size:15px;color:var(--muted);margin:25px 0 32px;max-width:480px}.service-toolbar{border-bottom:1px solid var(--line);padding-bottom:23px;display:grid;gap:18px}.category-tabs{display:flex;gap:22px}.category-tabs button{font-size:13px;padding:10px 0;background:transparent;color:var(--muted);position:relative}.category-tabs button:after{content:"";height:2px;position:absolute;bottom:0;left:0;right:0;background:var(--plum);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}.category-tabs button.active{color:var(--plum);font-weight:600}.category-tabs button.active:after{transform:scaleX(1)}.length-control{display:inline-flex;justify-self:start;background:#eae2e4;border-radius:999px;padding:4px}.length-control button{background:transparent;border-radius:999px;font-size:12px;padding:9px 16px;transition:background .25s var(--ease),color .25s var(--ease)}.length-control button.active{background:var(--plum);color:var(--paper)}.service-row{display:grid;grid-template-columns:1fr auto auto;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding:26px 0}.service-row h3{font-size:18px;font-weight:500;letter-spacing:-.025em}.service-row p{font-size:13px;color:var(--muted);margin-top:8px;max-width:330px;line-height:1.7}.service-price{text-align:right;font-size:16px;font-weight:500;white-space:nowrap}.service-price small{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:6px;white-space:normal;max-width:140px}.service-book{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:transparent;font-size:24px;transition:background .25s var(--ease),color .25s var(--ease)}.service-book:hover{background:var(--plum);color:var(--paper)}.service-footnote{font-size:11px;color:var(--muted);line-height:1.8;margin-top:24px;max-width:490px}.service-footnote a{text-decoration:underline}
.extension-section{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:8vw;background:var(--plum);color:var(--paper);padding:100px var(--gutter);overflow:hidden}.extension-copy h2{font-size:clamp(48px,5.5vw,88px)}.extension-copy>p:not(.section-label){margin-top:28px;max-width:430px;font-size:16px;color:#ead4dc}.extension-details{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:35px 0}.extension-details h3{font-size:14px;font-weight:500;margin-bottom:9px}.extension-details p{font-size:13px;color:#e0bdcb;max-width:220px}.extension-visual{height:610px;position:relative;overflow:hidden}.extension-visual img{width:100%;height:100%;object-fit:cover;transform:scale(1.04) translateY(calc(var(--extension-progress,0)*-12px));}
.about-section{padding:130px var(--gutter);display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:center;max-width:1650px;margin:auto}.about-copy h2{font-size:clamp(50px,5.3vw,82px);margin-bottom:32px}.about-lead{font-family:var(--serif);font-size:34px;line-height:1.4;letter-spacing:-.025em;margin-bottom:25px}.about-copy>p:not(.section-label):not(.about-lead){font-size:15px;line-height:1.85;color:var(--muted);max-width:410px;margin-bottom:18px}.about-copy .text-link{margin-top:10px}.about-image{perspective:1100px}.about-image-inner{position:relative;aspect-ratio:.85;overflow:hidden;transform:rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) rotateZ(2deg);transition:transform .6s var(--ease)}.about-image img{width:100%;height:100%;object-fit:cover;object-position:50% 24%}.about-photo-label{position:absolute;bottom:12px;left:28px;font-family:var(--serif);font-size:95px;letter-spacing:-.07em;color:var(--paper)}.about-image figcaption{font-size:12px;color:var(--muted);margin:27px 0 0 12px}
.faq-section{display:grid;grid-template-columns:1fr 1.3fr;gap:9vw;padding:85px var(--gutter) 115px;border-top:1px solid var(--line)}.faq-section h2{font-size:clamp(50px,6vw,88px)}.faq-section>div>p:not(.section-label){font-size:15px;color:var(--muted);margin-top:25px}.faq-section .text-link{margin-top:15px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{display:flex;justify-content:space-between;gap:25px;align-items:center;cursor:pointer;padding:27px 0;font-size:16px;list-style:none;font-weight:500}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:24px;font-weight:400;transition:transform .3s var(--ease)}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{font-size:14px;color:var(--muted);padding:0 40px 25px 0;line-height:1.85}.faq-list a{text-decoration:underline}
.contact-section{position:relative;isolation:isolate;overflow:hidden;background:var(--plum);color:var(--paper);padding:40px var(--gutter) 65px}.contact-top{display:flex;justify-content:space-between;font-size:13px;color:#e4c6d2}.contact-section h2{font-size:clamp(75px,10.5vw,170px);line-height:1;margin:65px 0 60px;position:relative;z-index:2;max-width:1150px}.contact-bottom{display:flex;gap:50px;align-items:center;justify-content:space-between;position:relative;z-index:2}.contact-card{font-size:14px}.contact-card strong{font-size:16px;font-weight:500}.contact-card p{font-size:13px;color:#e4c6d2;margin:6px 0}.contact-card a{font-size:13px;border-bottom:1px solid #b99eae;padding-bottom:3px}.contact-instagram{font-size:16px}.contact-instagram small{display:block;font-size:12px;color:#e4c6d2;margin-top:8px}.contact-monogram{position:absolute;right:-15px;top:25%;font-family:var(--serif);font-size:650px;line-height:1;color:#ffffff07;letter-spacing:-.1em;z-index:-1;transform:rotate(-15deg) translateY(calc(var(--contact-progress,0)*-30px))}footer{display:flex;align-items:center;gap:32px;padding:35px var(--gutter);font-size:12px}footer .wordmark{font-size:45px}footer p{color:var(--muted)}footer>span{margin-left:auto;color:var(--muted)}.subtle-link{margin-left:auto;font-size:12px;text-decoration:underline;text-underline-offset:4px;background:none;color:var(--muted)}.mobile-bookbar{display:none}
/* One entrance sequence; other motion follows the visitor's actions. */
.motion-ready [data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .65s var(--ease),transform .8s var(--ease)}.motion-ready [data-reveal].revealed{opacity:1;transform:none}.motion-ready .hero .title-line>span{animation:hero-title 1.15s var(--ease) both}.motion-ready .hero .title-line:nth-child(2)>span{animation-delay:.12s}.motion-ready .hero-description,.motion-ready .hero-buttons,.motion-ready .hero-location{animation:hero-detail .85s .35s var(--ease) both}.motion-ready .hero-portrait{animation:portrait-enter 1.3s var(--ease) both}@keyframes hero-title{from{transform:translateY(105%) rotate(2deg)}to{transform:none}}@keyframes hero-detail{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes portrait-enter{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:none}}.motion-ready dialog[open]{animation:dialog-in .25s var(--ease) both}@keyframes dialog-in{from{opacity:0;transform:translateY(12px) scale(.99)}to{opacity:1;transform:none}}
@media(min-width:1800px){.hero{grid-template-columns:54% 46%}.hero-copy{padding-left:7vw}.hero h1{font-size:180px}.hero-description{font-size:20px}.hero-scroll{left:7vw}}
@media(max-width:1150px){.wordmark small{display:none}.desktop-nav{gap:26px}.hero{min-height:650px}.hero-copy{padding-top:70px;padding-bottom:100px}.hero h1{font-size:10.4vw}.hero-buttons{gap:20px;flex-wrap:wrap}.hero-cta{font-size:14px;gap:24px}.hero-work-link{font-size:13px}.hero-location{font-size:11px}.hero-portrait figcaption{left:30px}.portrait-name{font-size:36px}.portrait-role{font-size:11px}.service-ribbon a{font-size:14px;padding:24px}.work-heading-side{display:block;font-size:13px}.gallery-controls{margin-top:20px}.services-section{gap:6vw}.service-row{gap:12px}.service-row h3{font-size:16px}.service-row p{font-size:12px}.service-price{font-size:14px}.category-tabs{gap:14px}.category-tabs button{font-size:12px}.extension-section{gap:6vw}.extension-visual{height:540px}.extension-details{gap:20px}.about-section{gap:7vw}.contact-bottom{gap:30px}}
@media(max-width:850px){.site-header{height:82px}.desktop-nav{display:none}.menu-toggle.icon-button{display:flex;flex-direction:column;gap:6px;justify-content:center;width:36px;height:44px;background:none;border-radius:0}.menu-toggle span{display:block;width:23px;height:1px;background:var(--plum);transition:transform .25s var(--ease)}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.wordmark{font-size:52px}.header-book{font-size:13px;gap:18px}.hero{height:calc(100svh - 82px);min-height:600px;grid-template-columns:51% 49%}.hero-copy{padding-right:18px}.hero h1{font-size:10.4vw}.hero-description{font-size:15px;max-width:280px}.desktop-break{display:none}.hero-buttons{gap:14px;display:grid}.hero-cta{min-height:57px}.hero-location{max-width:230px;line-height:1.8}.hero-location span{padding:0 3px}.portrait-name{font-size:30px}.portrait-role{display:none}.motion-control{right:20px;bottom:35px}.service-ribbon{padding:0 24px}.service-ribbon a{font-size:12px;padding:20px 16px;gap:10px}.service-ribbon span{font-size:20px}.intro-section{padding:80px var(--gutter)}.intro-bottom{grid-template-columns:1fr 2fr;gap:28px}.intro-bottom .text-link{grid-column:2}.work-heading{align-items:start}.work-heading h2{font-size:64px}.work-heading-side p{max-width:240px}.work-card{flex-basis:45%}.gallery figcaption{display:block}.gallery figcaption span{display:block;margin-top:6px}.services-section{grid-template-columns:1fr;padding:85px var(--gutter);gap:45px}.service-editorial{position:relative;top:auto;max-width:100%}.service-photo{height:350px;aspect-ratio:auto}.service-photo img{object-position:50% 45%}.service-content h2{font-size:62px}.service-row h3{font-size:19px}.service-row p{font-size:14px}.service-price{font-size:17px}.category-tabs{gap:28px}.category-tabs button{font-size:14px}.service-footnote{font-size:12px}.extension-section{gap:35px;padding:75px var(--gutter)}.extension-visual{height:480px}.extension-copy h2{font-size:50px}.extension-copy>p:not(.section-label){font-size:14px}.extension-details{grid-template-columns:1fr;margin:28px 0}.extension-details p{max-width:none}.about-section{padding:85px var(--gutter);gap:6vw}.about-copy h2{font-size:48px}.about-lead{font-size:28px}.about-copy>p:not(.section-label):not(.about-lead){font-size:14px}.faq-section{gap:6vw;padding:70px var(--gutter) 85px}.faq-section h2{font-size:52px}.faq-list summary{font-size:14px}.contact-bottom{display:grid;grid-template-columns:1fr 1fr;gap:30px}.contact-bottom>.button{justify-self:start}.contact-instagram{grid-column:2}.contact-section h2{font-size:12vw}footer{flex-wrap:wrap;gap:20px;font-size:11px}footer p{display:none}.subtle-link{font-size:11px}}
@media(max-width:600px){html{scroll-padding-top:90px}body{font-size:15px;--gutter:24px}.site-header{height:78px;gap:15px}.wordmark{font-size:47px}.header-actions{gap:20px}.header-book{font-size:12px;gap:13px;padding:8px 0}.header-book span{font-size:20px}.menu-toggle.icon-button{width:27px}.hero{display:flex;flex-direction:column;height:auto;min-height:0;max-height:none;padding-bottom:0;overflow:hidden}.hero-portrait{order:0;flex:none;width:100%;height:370px}.portrait-depth{inset:-7px}.hero-image{object-position:58% 26%;transform:scale(1.025)}.hero-portrait:after{inset:75% 0 0}.hero-portrait figcaption{left:24px;bottom:21px}.portrait-name{font-size:31px}.motion-control{right:24px;bottom:20px;width:38px;height:38px}.hero-copy{order:1;display:block;padding:28px 24px 35px}.hero h1{font-size:clamp(64px,17.8vw,106px);line-height:.96;letter-spacing:-.07em;margin-bottom:22px}.title-line{display:inline-block;overflow:visible;padding:0;margin:0;white-space:normal}.title-line:first-child{margin-right:.13em}.title-line>span{display:inline-block}.hero-description{font-size:16px;max-width:320px;line-height:1.6;margin-bottom:25px}.hero-buttons{display:flex;gap:23px;align-items:center}.hero-cta{font-size:14px;min-height:58px;padding:8px 8px 8px 21px;gap:24px}.hero-cta .button-icon{width:40px;height:40px;font-size:23px}.hero-work-link{font-size:12px;max-width:108px;line-height:1.5;padding:10px 0}.hero-location{font-size:11px;max-width:none;margin-top:22px}.hero-scroll{display:none}.service-ribbon{grid-template-columns:1fr;padding:4px 24px}.service-ribbon a,.service-ribbon a:first-child,.service-ribbon a:last-child{padding:15px 0;border-right:0;border-bottom:1px solid #ffffff2a;font-size:14px}.service-ribbon a:last-child{border-bottom:0}.service-ribbon span{font-size:22px}.intro-section{padding:65px 24px}.scroll-statement{font-size:43px;line-height:1.15}.intro-bottom{display:block;margin-top:30px}.intro-signature{display:none}.intro-bottom p{font-size:15px}.intro-bottom .text-link{margin-top:22px}.text-link{font-size:13px}.work-section{padding:62px 0 40px}.work-heading{display:block;margin-bottom:22px}.work-heading h2{font-size:57px}.work-heading-side{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-top:24px}.work-heading-side p{font-size:13px;max-width:235px}.work-heading-side br{display:none}.gallery-controls{margin-top:0}.gallery-controls button{width:39px;height:39px}.gallery{gap:20px;padding:16px 24px 30px}.work-card{flex-basis:83%;transform:none!important}.work-card:nth-child(2){margin-top:35px}.gallery-image{aspect-ratio:.83}.gallery figcaption{display:flex}.gallery h3{font-size:17px}.gallery figcaption span{font-size:12px;margin:0}.work-footer{display:block}.work-footer p{font-size:11px;margin-bottom:14px}.work-footer .text-link{font-size:12px}.services-section{padding:65px 24px;gap:35px}.service-photo{height:330px}.service-content h2{font-size:53px}.service-intro{font-size:14px;margin:22px 0 28px}.category-tabs{gap:16px;justify-content:space-between}.category-tabs button{font-size:11px}.length-control button{font-size:12px;min-height:38px}.service-row{grid-template-columns:1fr auto auto;gap:12px;padding:24px 0}.service-row h3{font-size:16px}.service-row p{font-size:12px;line-height:1.7}.service-price{font-size:14px;max-width:105px}.service-price small{font-size:10px;max-width:100px}.service-book{width:40px;height:40px;font-size:22px}.service-footnote{font-size:11px}.extension-section{grid-template-columns:1fr;padding:50px 24px 60px;gap:38px}.extension-visual{height:430px}.extension-copy h2{font-size:57px}.extension-copy .section-label{font-size:13px;margin-bottom:20px}.extension-copy>p:not(.section-label){font-size:15px}.extension-details{grid-template-columns:1fr 1fr;gap:24px;margin:30px 0}.extension-details h3{font-size:14px}.extension-details p{font-size:12px}.about-section{padding:65px 24px;display:flex;flex-direction:column;gap:40px;align-items:stretch}.about-copy h2{font-size:55px;margin-bottom:24px}.about-lead{font-size:30px;margin-bottom:20px}.about-copy>p:not(.section-label):not(.about-lead){font-size:15px}.about-image{margin:0 4px}.about-image-inner{aspect-ratio:.9}.about-photo-label{font-size:80px}.about-image figcaption{font-size:11px;margin:22px 0 0}.faq-section{display:block;padding:55px 24px 60px}.faq-section h2{font-size:55px}.faq-section>div>p:not(.section-label){font-size:14px;margin-top:20px}.faq-list{margin-top:35px}.faq-list summary{font-size:15px;padding:23px 0}.faq-list details p{font-size:14px;padding-right:15px}.contact-section{padding:30px 24px 45px}.contact-top{font-size:11px}.contact-section h2{font-size:16vw;margin:45px 0 35px}.contact-bottom{display:block}.contact-card{margin-top:35px}.contact-card strong{font-size:16px}.contact-card p{font-size:14px}.contact-instagram{display:block;margin-top:28px;font-size:15px}.contact-monogram{font-size:440px;top:34%}footer{padding:30px 24px 100px;gap:20px}footer>.wordmark{font-size:44px}footer>span{width:100%;margin-left:0;font-size:11px}.mobile-bookbar{position:fixed;bottom:12px;left:12px;right:12px;z-index:25;display:flex;justify-content:space-between;align-items:center;gap:14px;background:#f7f5f1f2;backdrop-filter:blur(12px);box-shadow:0 4px 28px #30252824;border:1px solid #ffffffa0;border-radius:100px;padding:8px 8px 8px 22px;transform:translateY(130%);transition:transform .35s var(--ease);pointer-events:none}.mobile-bookbar.visible{transform:none;pointer-events:auto}.mobile-bookbar>span{font-size:12px}.mobile-bookbar .button{min-height:46px;padding:12px 20px;gap:20px;font-size:12px}.mobile-bookbar .button span{font-size:20px}}
@media(max-width:370px){.hero-portrait{height:330px}.hero h1{font-size:65px}.hero-buttons{gap:16px}.hero-cta{gap:14px;padding-left:18px}.hero-work-link{font-size:11px}.header-actions{gap:15px}.category-tabs{gap:9px}.category-tabs button{font-size:10px}.gallery figcaption{display:block}.gallery figcaption span{margin-top:4px}}
/* All content and controls remain available without motion or JavaScript. */
.motion-paused *, .keyboard-navigation *{scroll-behavior:auto!important}.motion-paused .portrait-depth,.motion-paused .hero-image,.motion-paused .work-card,.motion-paused .extension-visual img,.motion-paused [data-tilt]{transform:none!important}.motion-paused [data-reveal]{opacity:1!important;transform:none!important}.motion-paused *{animation:none!important;transition:none!important}.keyboard-navigation dialog[open]{animation:none}.keyboard-navigation a,.keyboard-navigation button{transition:none}.modal-open .mobile-bookbar{visibility:hidden}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-ready [data-reveal]{opacity:1;transform:none}.portrait-depth,.hero-image,.work-card,.extension-visual img,[data-tilt]{transform:none!important}.scroll-statement .word{color:var(--ink)}}
html:has(body.keyboard-navigation){scroll-behavior:auto!important}
