@import url('https://fonts.googleapis.com/css2?family=Golos+Text:wght@400;500;600&family=Manrope:wght@400;500;600;700&display=swap');
:root{--paper:#f6f3ee;--ink:#29272b;--muted:#767078;--purple:#7d6596;--lavender:#e5ddec;--line:#dcd6d4;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Golos Text',Arial,sans-serif;font-size:15px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--purple);outline-offset:6px}img{display:block;width:100%;height:100%;object-fit:cover}figure,p,h1,h2,h3{margin:0}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.header{height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:28px}.brand{font-family:var(--serif);font-size:43px;line-height:.9;letter-spacing:-2px;display:inline-block}.brand span{display:block;font-family:'Golos Text',sans-serif;font-size:8px;letter-spacing:2.3px;text-transform:uppercase;margin-top:13px}.header nav{display:flex;gap:30px;font-size:12px}.header nav a:hover{color:var(--purple)}.header-book{font-size:12px;border-bottom:1px solid var(--ink);padding:7px 0}.header-book span{margin-left:30px}.hero{min-height:730px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:30px;padding-block:65px 70px}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:500;line-height:1.5}.tiny-flower{font-size:19px;vertical-align:middle;color:var(--purple);margin-right:8px}.hero h1{font-family:var(--serif);font-size:clamp(54px,5.4vw,82px);font-weight:400;line-height:1.02;letter-spacing:-3.6px;margin-top:27px}em{font-family:var(--serif);font-weight:400;color:var(--purple)}.hero-text{color:var(--muted);margin:28px 0 30px;font-size:14px;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:30px}.button{display:inline-flex;gap:40px;justify-content:space-between;align-items:center;background:var(--purple);color:#fff;padding:18px 25px;border-radius:3px;font-size:12px;transition:background .2s,transform .2s}.button:hover{background:#695180;transform:translateY(-2px)}.button span{font-size:20px;line-height:1}.text-link{font-size:12px;border-bottom:1px solid currentColor;padding-bottom:5px;display:inline-flex;gap:28px;align-items:center}.hero-location{display:flex;gap:13px;align-items:center;margin-top:39px;font-size:11px;line-height:1.8}.hero-location small{color:var(--muted);font-size:10px}.location-dot{width:9px;height:9px;border-radius:50%;background:var(--purple);box-shadow:0 0 0 5px #e8e0ed;margin-left:5px}.hero-art{position:relative;height:570px;padding:10px 30px 0 38px}.hero-backdrop{position:absolute;inset:32px -4px 4px 70px;background:#e4dce9;border-radius:46% 46% 7px 7px;transform:rotate(7deg)}.hero-photo{position:relative;height:530px;border-radius:45% 45% 3px 3px;overflow:hidden;transform:rotate(-4deg);box-shadow:0 12px 30px #332b3610}.hero-photo img{object-position:50% 35%}.hero-photo figcaption{position:absolute;bottom:18px;left:22px;right:22px;color:#fff;font-size:10px;letter-spacing:1px;text-shadow:0 1px 5px #000}.orbit-flower{position:absolute;top:-16px;right:0;font-size:118px;color:#9881ae;line-height:1;animation:rotate 45s linear infinite}.small-note{position:absolute;left:-5px;bottom:52px;transform:rotate(-9deg);background:var(--paper);padding:12px 15px;box-shadow:0 4px 20px #2221}.small-note span{font-family:var(--serif);font-size:23px;font-style:italic;line-height:1.1}.small-note svg{display:inline-block;width:45px;height:35px;margin-left:6px;stroke:var(--purple);stroke-width:1.5;fill:none}.photo-number{position:absolute;right:25px;bottom:0;font-size:8px;letter-spacing:2px}.ribbon{overflow:hidden;background:var(--lavender);border-block:1px solid #d7ccdf;padding:19px 0}.ribbon>div{width:max-content;word-spacing:10px;font-family:var(--serif);font-size:26px;font-style:italic;animation:drift 55s linear infinite}.ribbon span{color:var(--purple);margin:0 35px;font-style:normal}.section{padding-top:105px;padding-bottom:100px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:45px}h2{font-family:var(--serif);font-weight:400;font-size:clamp(40px,4vw,61px);line-height:1.1;letter-spacing:-1.6px;margin-top:22px}.section-intro{font-size:13px;color:var(--muted);line-height:1.9;padding-bottom:5px}.price-row{display:flex;align-items:center;gap:24px;padding:26px 6px;border-top:1px solid var(--line);transition:padding .25s,background .25s}.price-row:last-child{border-bottom:1px solid var(--line)}.price-row:hover{background:#eee8f0;padding-left:18px;padding-right:18px}.row-number{font-size:10px;color:var(--purple);width:45px}.price-row h3{font-size:20px;font-weight:400}.price-row p{font-size:11px;color:var(--muted);margin-top:4px}.price{margin-left:auto;font-size:17px;white-space:nowrap}.row-arrow{font-size:24px;font-weight:400;margin-left:38px}.price-foot{display:flex;justify-content:space-between;margin-top:25px;gap:20px;align-items:center}.price-foot p{color:var(--muted);font-size:11px}.works{background:#ede8e4}.gallery{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px}.work{padding:0;border:0;background:none;cursor:zoom-in;text-align:left;min-width:0}.work img{height:390px;transition:filter .3s,transform .5s;object-position:center 42%}.work:nth-child(2){margin-top:48px}.work:nth-child(3){margin-top:95px}.work:hover img{filter:brightness(1.05);transform:translateY(-6px)}.work span{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.5px;padding-top:16px}.work b{font-size:19px;font-weight:400}.gallery-footer{display:flex;align-items:center;justify-content:space-between;margin-top:33px}.gallery-footer p{font-size:11px;color:var(--muted)}.studio{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center}.studio-image{position:relative;height:640px}.studio-image img{border-radius:240px 240px 3px 3px;object-position:center}.studio-label{position:absolute;bottom:20px;left:20px;right:20px;color:#fff;letter-spacing:1.5px;font-size:8px;text-shadow:0 1px 4px #000}.studio h2{font-size:49px}.studio-intro{color:var(--muted);font-size:13px;margin-top:24px;margin-bottom:28px;line-height:1.9}.care{display:flex;gap:22px;padding:19px 0;border-top:1px solid var(--line)}.care>span{font-size:27px;width:28px;flex-shrink:0;color:var(--purple);line-height:1.2}.care h3{font-size:15px;font-weight:500}.care p{font-size:11px;color:var(--muted);line-height:1.8;margin-top:6px}.contact-section{background:var(--lavender)}.contact{display:grid;grid-template-columns:1.1fr 1fr;padding-block:85px 90px;gap:70px}.contact h2{font-size:66px}.contact>div>p:not(.eyebrow){font-size:13px;line-height:1.9;margin-top:25px;margin-bottom:28px;color:#6f6576}.contact-info{position:relative;display:flex;flex-direction:column;justify-content:center;gap:39px;padding-top:30px}.contact-info h3{font-size:21px;font-weight:400;margin-top:13px}.contact-info p:not(.eyebrow){font-size:12px;margin-block:6px 13px;color:#6f6576}.contact-info .eyebrow{font-size:9px}.contact-flower{position:absolute;right:5px;top:-30px;font-size:125px;line-height:1;color:#a58ab8;animation:float 7s ease-in-out infinite}.phone{display:inline-block;font-size:24px;margin-top:10px}.socials{display:flex;gap:25px;font-size:11px;margin-top:13px}.socials a:hover{text-decoration:underline}footer{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-block:42px}footer .brand{font-size:35px}footer p,.concept{font-size:10px;color:var(--muted)}.mobile-book{display:none}.lightbox{padding:0;border:0;background:transparent;max-width:90vw;max-height:92vh;overflow:visible}.lightbox::backdrop{background:#1b1723df;backdrop-filter:blur(6px)}.lightbox img{max-width:85vw;max-height:88vh;width:auto;height:auto;object-fit:contain}.close-lightbox{position:absolute;right:8px;top:8px;background:var(--paper);border:0;border-radius:50%;width:38px;height:38px;font-size:28px;cursor:pointer}.reveal{opacity:1}.js-motion .reveal{opacity:0;transform:translateY(22px);transition:opacity .8s,transform .8s}.js-motion .reveal.visible{opacity:1;transform:none}.hero-copy{animation:enter .9s both}.hero-art{animation:enter 1.2s both}@keyframes enter{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes float{50%{transform:translateY(-12px) rotate(12deg)}}@keyframes drift{to{transform:translateX(-33.333%)}}
@media(min-width:1600px){.hero{min-height:810px}.hero h1{font-size:84px}.hero-art{height:630px}.hero-photo{height:590px}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.header nav{gap:18px;font-size:10px}.hero{gap:15px;min-height:660px}.hero h1{font-size:61px}.hero-art{height:500px;padding-left:20px;padding-right:15px}.hero-photo{height:460px}.hero-actions{gap:20px}.hero-actions .button{gap:22px;padding-inline:18px}.hero-text{font-size:13px}.small-note{left:-10px}.orbit-flower{font-size:90px}.studio{gap:50px}.studio h2{font-size:42px}.work img{height:320px}.studio-image{height:600px}.contact h2{font-size:55px}.contact-flower{font-size:85px;right:0}.section-intro br{display:none}.section-intro{max-width:300px}footer p{max-width:180px}}
@media(max-width:720px){.wrap{width:calc(100% - 40px)}.header{height:90px;gap:12px}.brand{font-size:34px}.brand span{font-size:6px;letter-spacing:1.6px;margin-top:10px}.header nav{display:none}.header-book{font-size:11px}.header-book span{margin-left:12px}.hero{grid-template-columns:1fr;padding-top:38px;padding-bottom:35px;gap:30px}.hero .eyebrow{font-size:8px;letter-spacing:1.3px}.hero h1{font-size:clamp(54px,13.5vw,76px);letter-spacing:-2.8px;line-height:1.01;margin-top:20px}.hero-text{font-size:13px;margin-top:23px;margin-bottom:24px}.hero-text br.desktop{display:none}.hero-actions{gap:24px}.hero-actions .button{padding:17px 20px;gap:35px}.hero-location{margin-top:25px}.hero-art{height:460px;max-width:440px;width:100%;margin:auto;padding-inline:25px 20px}.hero-photo{height:425px}.hero-backdrop{left:45px;right:7px}.orbit-flower{right:0;top:3px;font-size:85px}.small-note{bottom:30px;left:0}.small-note span{font-size:22px}.photo-number{bottom:-2px;font-size:7px}.ribbon{padding-block:13px}.ribbon>div{font-size:23px}.ribbon span{margin-inline:20px}.section{padding-top:65px;padding-bottom:65px}.section-heading{display:block;margin-bottom:30px}h2{font-size:43px;letter-spacing:-1.5px;margin-top:18px}.section-intro{font-size:12px;margin-top:22px;max-width:100%}.section-intro br{display:none}.price-row{gap:12px;padding-block:22px}.row-number{width:18px;font-size:9px}.price-row h3{font-size:16px}.price-row p{font-size:10px;max-width:175px;line-height:1.6}.price{font-size:13px}.row-arrow{margin-left:0;font-size:19px}.price-foot{align-items:flex-start;gap:20px}.price-foot p{max-width:185px;font-size:10px}.text-link{font-size:11px;gap:16px;white-space:nowrap}.gallery{grid-template-columns:1fr 1fr;gap:20px 14px}.work img{height:245px}.work:nth-child(2){margin-top:35px}.work:nth-child(3){display:none}.work span{font-size:8px;letter-spacing:0;padding-top:10px}.gallery-footer{gap:20px;margin-top:25px}.gallery-footer p{font-size:10px;max-width:150px}.studio{grid-template-columns:1fr;gap:38px}.studio-image{height:420px}.studio-copy{padding-top:0}.studio h2{font-size:43px}.studio-intro{font-size:12px}.care{padding-block:17px}.care p{font-size:11px}.contact{grid-template-columns:1fr;padding-block:60px;gap:40px}.contact h2{font-size:53px}.contact>div>p:not(.eyebrow){font-size:12px}.contact-info{gap:30px;border-top:1px solid #c9bbd1;padding-top:30px}.contact-flower{top:-40px;right:3px;font-size:75px}.contact-info h3{font-size:19px}.phone{font-size:23px}footer{align-items:flex-start;flex-wrap:wrap;padding-block:32px 100px;gap:23px}footer p{display:none}.concept{font-size:8px;align-self:center}.mobile-book{position:fixed;bottom:14px;left:20px;right:20px;display:flex;padding:16px 22px;z-index:10;box-shadow:0 5px 25px #51405c33;background:#725887}.lightbox{max-width:94vw}.lightbox img{max-width:94vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.js-motion .reveal{opacity:1;transform:none}}
