:root{--paper: #f4f2ec;--surface: #fbfaf7;--ink: #121311;--muted: #686965;--soft: #deddd7;--accent: #f3e2bc;--accent-hover: #fff0cf;--accent-dark: #9a7c46;--green: #2e4a28;--round: 30px;--pill: 999px;color:var(--ink);font-family:Avenir Next,Avenir,Helvetica Neue,Arial,sans-serif;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{margin:0;min-width:320px;background:var(--paper)}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}img{display:block;width:100%}.shell{width:min(100%,1120px);margin:0 auto;padding:0 18px 64px}.site-header{height:108px;display:flex;align-items:center;justify-content:space-between}.wordmark{display:block;width:116px;height:88px}.wordmark img{width:100%;height:100%;object-fit:contain;transform:scale(1.45);transform-origin:center}.header-socials{display:flex;align-items:center;gap:5px;padding:8px;border-radius:22px;background:var(--surface)}.header-socials a{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;color:var(--green);transition:background .2s ease,transform .2s ease}.header-socials a:hover{background:var(--accent);transform:translateY(-1px)}.header-socials a:active{transform:scale(.96)}.header-socials svg{width:21px;height:21px}.hero{position:relative;min-height:690px;padding:30px 10px 54px;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(360px,.96fr);align-items:center;gap:clamp(44px,7vw,88px)}.hero-media{position:relative;min-height:610px}.hero-photo-main,.hero-photo-secondary{position:absolute;margin:0;overflow:hidden;border-radius:var(--round)}.hero-photo-main{top:0;right:7%;bottom:9%;left:15%;transform:rotate(1.2deg);background:#4c401c;padding:8px}.hero-photo-main img,.hero-photo-secondary img{width:100%;height:100%;object-fit:cover;border-radius:22px}.hero-photo-main img{object-position:48% center}.hero-photo-secondary{z-index:2;width:45%;aspect-ratio:.92;left:0;bottom:0;transform:rotate(-4deg);border:7px solid var(--paper);box-shadow:-14px 15px 0 var(--green)}.hero-photo-secondary img{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;object-position:50% center;transition:opacity .7s cubic-bezier(.16,1,.3,1)}.hero-photo-secondary img.is-active{z-index:1;opacity:1}.hero-asterisk{position:absolute;z-index:3;width:62px;height:62px;left:5%;top:22%;color:var(--ink)}.hero-copy{align-self:center;padding:24px 8px 24px 0}.hero-kicker{width:fit-content;margin:0 0 34px;padding-bottom:8px;border-bottom:3px solid #8d873e;font-size:14px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.hero h1{margin:0 0 22px;max-width:10ch;font:700 clamp(48px,5.4vw,76px)/.98 "Arial Rounded MT Bold","Avenir Next",sans-serif;letter-spacing:-3.5px}.category,.service-type{display:inline-flex;border:1px solid #51524e;background:#30312f;color:#d0d1cb;border-radius:var(--pill);padding:8px 16px}.hero-bio{display:grid;gap:14px}.bio{margin:0;color:var(--muted);font-size:17px;line-height:1.65;max-width:54ch}.booking-link{width:fit-content;min-height:58px;display:inline-flex;align-items:center;justify-content:center;gap:13px;margin-top:24px;padding:0 22px;border-radius:var(--pill);background:var(--accent);color:#11120f;font-weight:700;font-size:18px;box-shadow:0 16px 32px #73572c29;transition:transform .2s ease,background .2s ease}.booking-link:hover{background:var(--accent-hover);transform:translateY(-2px)}.booking-link:active{transform:scale(.98)}.booking-link:focus-visible,.header-socials a:focus-visible,.footer a:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.booking-link svg{width:24px;height:24px}.booking-arrow{margin-left:6px}.panel{min-height:680px;animation:panel-in .35s ease both}@keyframes panel-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.services-panel{padding:42px 10px 84px}.services-intro{max-width:790px;margin:0 auto 70px;text-align:center}.services-intro>p{margin:0 0 14px;font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.16em}.services-intro h2{position:relative;z-index:1;width:fit-content;margin:0 auto 16px;font:700 clamp(52px,7vw,86px)/.92 Didot,"Bodoni 72","Times New Roman",serif;letter-spacing:-3px;text-transform:uppercase}.services-intro h2:after{content:"";position:absolute;z-index:-1;width:34%;height:55%;right:-3%;top:23%;border:3px solid var(--accent);border-radius:50%;transform:rotate(-8deg);opacity:.72}.services-intro>span{display:block;max-width:650px;margin:0 auto;font:400 clamp(19px,2.2vw,27px)/1.35 Didot,"Bodoni 72","Times New Roman",serif}.service-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(38px,7vw,88px)}.service-card{min-width:0;display:flex;flex-direction:column}.service-visual{position:relative;margin:0 0 40px;aspect-ratio:1.08}.service-backplate{position:absolute;top:2%;right:-1%;bottom:-2%;left:2%;border-radius:var(--round);background:var(--accent);transform:rotate(4deg);opacity:.88}.service-card:nth-child(2) .service-backplate{background:var(--green);transform:rotate(-4deg);opacity:.92}.service-visual>img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border-radius:var(--round);object-fit:cover}.service-card:first-child .service-visual>img{object-position:center}.service-card:nth-child(2) .service-visual>img{object-position:48% 28%}.service-asterisk{position:absolute;z-index:2;width:58px;height:58px;left:-28px;top:-22px;color:var(--ink)}.service-content{display:flex;flex:1;min-height:310px;flex-direction:column}.service-topline{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding-bottom:11px;border-bottom:2px solid var(--accent)}.service-topline span{font-size:14px;font-weight:800;text-transform:uppercase;letter-spacing:.13em}.service-topline strong{color:var(--green);font-size:20px;white-space:nowrap}.service-card h3{margin:25px 0 10px;font:400 clamp(31px,3vw,43px)/1.03 Didot,"Bodoni 72","Times New Roman",serif}.service-card .service-content>p{margin:0 0 24px;color:var(--muted);line-height:1.55;font-size:17px;max-width:46ch}.service-schedule{display:flex;align-items:center;justify-content:center;gap:11px;width:100%;min-height:46px;margin-top:auto;margin-bottom:18px;padding:11px 15px;border-radius:14px;background:var(--accent);color:var(--green);font-size:15px;font-weight:700;line-height:1.35;text-align:center}.service-schedule svg{flex:0 0 auto;width:22px;height:22px}.service-card .booking-link{width:100%;min-height:54px;margin-top:0;border:2px solid var(--accent);background:transparent;box-shadow:none;font-size:15px;letter-spacing:.06em;text-transform:uppercase}.service-card .booking-link:hover{background:var(--accent)}.footer{padding:0 16px 16px;background:var(--paper);color:#f5f4ef}.footer-main{position:relative;width:min(100%,1400px);min-height:510px;margin:0 auto;padding:76px clamp(38px,5vw,76px) 34px;border-radius:48px 48px 0 0;background:#121311;display:grid;grid-template-columns:1.45fr .72fr .9fr;grid-template-rows:1fr auto;gap:56px clamp(44px,6vw,90px)}.footer-brand{display:grid;grid-template-columns:185px 1fr;align-items:center;gap:34px}.footer-portrait{position:relative;width:185px;aspect-ratio:.82;margin:0}.footer-portrait>span{position:absolute;top:-2%;right:-5%;bottom:1%;left:5%;border-radius:24px;background:var(--accent);transform:rotate(6deg)}.footer-portrait img{position:absolute;top:0;right:0;bottom:0;left:0;height:100%;border-radius:24px;object-fit:cover;object-position:48% center}.footer-signature{width:fit-content;margin-bottom:16px;font:500 clamp(40px,4vw,54px)/1.02 "Snell Roundhand","Brush Script MT",cursive;color:#f8f6ef;transform:rotate(-2deg);transform-origin:left center}.footer-signature span{display:block;white-space:nowrap}.footer-signature span:last-child{text-align:center}.footer-brand-copy>p{max-width:30ch;margin:0;font:400 clamp(21px,2.2vw,30px)/1.3 Didot,"Bodoni 72","Times New Roman",serif}.social-links{display:flex;gap:12px;margin-top:24px}.social-links a{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;color:#121311;background:var(--accent);transition:transform .2s ease,background .2s ease}.social-links a:hover{transform:translateY(-2px);background:var(--accent-hover)}.social-links svg{width:22px;height:22px}.footer-navigation h2,.footer-contact h2{width:fit-content;margin:0 0 25px;padding-bottom:5px;border-bottom:2px solid var(--accent);font:italic 500 34px/1.1 Didot,"Bodoni 72",Times New Roman,serif}.footer-navigation>div{display:grid;gap:18px}.footer-navigation a{width:fit-content;font-size:15px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.footer-navigation a:hover,.footer-meta a:hover{color:var(--accent)}.footer-contact>p{max-width:26ch;margin:0 0 23px;color:#dfded8;font-size:17px;line-height:1.55}.contact-person{margin-bottom:14px;color:#f5f4ef;font-size:15px;font-weight:800;letter-spacing:.04em}.contact-detail{display:grid;grid-template-columns:24px 1fr;gap:10px;align-items:start;color:#c7c7c0;font-size:14px;line-height:1.45}.contact-detail+.contact-detail{margin-top:12px}.contact-detail svg{width:22px;height:22px;color:var(--accent)}.footer-contact-button{min-height:54px;display:inline-flex;align-items:center;justify-content:center;margin-top:26px;padding:0 30px;border:2px solid var(--accent);border-radius:18px;font-size:14px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;transition:color .2s ease,background .2s ease}.footer-contact-button:hover{background:var(--accent);color:#121311}.footer-meta{grid-column:1 / -1;display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:26px;border-top:1px solid #41423e;color:#a5a69f}.footer-meta>div{display:flex;gap:26px}.footer-meta a,.footer-meta small{font-size:11px;letter-spacing:.13em;text-transform:uppercase}.back-to-top{position:absolute;right:0;bottom:0;width:62px;height:62px;display:grid;place-items:center;border-radius:22px 0 0;background:var(--accent);color:#121311}.back-to-top svg{width:27px;height:27px}.footer-gallery{width:min(100%,1400px);height:190px;margin:0 auto;display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:5px;overflow:hidden}.footer-gallery img{width:100%;height:100%;object-fit:cover}.footer-gallery img:nth-child(2n){object-position:60% center}@media(max-width:760px){.shell{padding-inline:14px}.site-header{height:94px}.wordmark{width:96px;height:76px}.hero{min-height:auto;padding:10px 6px 44px;display:block}.hero-media{min-height:500px;margin-bottom:34px}.hero-photo-main{top:0;right:3%;bottom:8%;left:13%;padding:7px}.hero-photo-secondary{width:44%;left:1%;bottom:0;border-width:6px;box-shadow:-10px 11px 0 var(--green)}.hero-asterisk{width:48px;height:48px;left:2%;top:20%}.hero-copy{margin-top:0;padding:16px 18px 0}.hero-kicker{margin-bottom:24px}.hero h1{max-width:11ch;font-size:48px}.bio{font-size:16px;line-height:1.6}.hero .booking-link{position:static}.services-panel{padding:30px 4px 60px}.services-intro{margin-bottom:52px}.services-intro h2{font-size:clamp(48px,15vw,64px);letter-spacing:-2px}.services-intro>span{font-size:20px}.service-list{grid-template-columns:1fr;gap:68px}.service-visual{margin-bottom:34px}.service-content{min-height:300px}.service-asterisk{width:48px;height:48px;left:-9px;top:-18px}.footer{padding:0 0 10px}.footer-main{min-height:0;padding:58px 32px 34px;border-radius:40px 40px 0 0;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;gap:58px 30px}.footer-brand{grid-column:1 / -1;display:flex;flex-direction:column}.footer-brand-copy{order:1;text-align:center}.footer-portrait{order:2;width:min(72vw,330px);margin:42px auto 0}.footer-signature{font-size:62px;transform:rotate(-2deg);transform-origin:center}.footer-brand-copy>p{margin-inline:auto;font-size:26px}.social-links{justify-content:center}.footer-navigation h2,.footer-contact h2{font-size:38px}.footer-contact>p{font-size:16px}.footer-meta{grid-column:1 / -1;align-items:flex-start;flex-direction:column}.footer-gallery{height:auto;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,auto);gap:5px}.footer-gallery img{aspect-ratio:1}.footer-gallery img:nth-child(n+7){display:none}}@media(max-width:420px){.header-socials{gap:2px;padding:6px;border-radius:18px}.header-socials a{width:36px;height:36px;border-radius:12px}.header-socials svg{width:19px;height:19px}.hero{padding-inline:0}.hero-media{min-height:425px}.hero h1{font-size:42px}.hero .booking-link{width:100%}.booking-arrow{display:none}.services-intro h2{font-size:45px}.service-card h3{font-size:35px}.footer-main{display:block;padding:52px 26px 36px;border-radius:34px 34px 0 0}.footer-signature{font-size:54px}.footer-brand-copy>p{font-size:22px}.footer-portrait{width:min(76vw,300px);margin-bottom:68px}.footer-navigation{margin-bottom:58px}.footer-navigation>div{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-contact{margin-bottom:62px}.footer-contact-button{width:100%}.footer-meta>div{flex-direction:column;gap:12px}.back-to-top{width:58px;height:58px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
