@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;1,400;1,500&display=swap');
:root{--ink:#48223b;--pink:#a91870;--paper:#fff9f3;--line:#d8b9c6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}a,summary{touch-action:manipulation}a:focus-visible,summary:focus-visible{outline:3px solid var(--pink);outline-offset:6px}header{height:104px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #bd789522;position:relative;z-index:2;background:#fff9f3}.brand{font-family:'Playfair Display',Georgia,serif;font-size:32px;letter-spacing:-1.6px;line-height:1.1}.brand span{display:block;font-family:'DM Sans',sans-serif;font-size:8px;letter-spacing:2px;margin-top:11px}nav{display:flex;align-items:center;gap:38px;font-size:13px}nav a{padding:12px 0}nav a:hover,.text-link:hover{color:var(--pink)}.nav-contact{border:1px solid var(--line);border-radius:30px;padding:10px 22px;display:flex;gap:30px}.hero{position:relative;min-height:680px;padding:78px 6% 85px;display:grid;grid-template-columns:1fr 1fr;background:radial-gradient(ellipse at 90% 42%,#f5a9d0 0,transparent 53%),radial-gradient(ellipse at 67% 83%,#f7cec2 0,transparent 48%),#fff8f1;overflow:hidden}.hero-copy{position:relative;z-index:1}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2.2px;margin:0 0 25px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400;line-height:1.13;letter-spacing:-2px}h1{font-size:clamp(48px,5.2vw,80px);margin-bottom:27px}em{font-weight:400;color:var(--pink)}.intro{font-size:15px;line-height:1.85;margin-bottom:30px}.button{display:inline-flex;align-items:center;justify-content:center;gap:35px;background:var(--pink);color:white;padding:15px 25px;border-radius:40px;font-size:12px;transition:background .2s,transform .2s}.button:hover{background:#7f1355;transform:translateY(-2px)}.button span{font-size:21px;line-height:1}.handwritten{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:18px;margin:25px 0;color:#7c4261}.hero-art{position:relative;min-height:455px}.orbit{position:absolute;width:113%;height:120%;top:-18%;left:-5%;color:#ae598b;opacity:.47}.portrait{position:absolute;width:83%;aspect-ratio:1.37;left:8%;top:17%;overflow:hidden;border-radius:48% 48% 45% 45%;transform:rotate(-5deg);box-shadow:0 0 0 9px #fff6ed44}.portrait img{position:absolute;max-width:none;width:125%;height:auto;left:0;top:-24%;transform:rotate(5deg) scale(1.07)}.hello{position:absolute;font-family:'Playfair Display',Georgia,serif;font-style:italic;top:70%;left:9%;font-size:34px;color:var(--ink);transform:rotate(-7deg);background:#fff1df;padding:0px 16px}.spark{position:absolute;color:#a91870;font-size:65px}.s1{top:3%;right:7%}.s2{left:0;bottom:22%;font-size:42px}.art-label{position:absolute;right:1%;bottom:0;font-size:8px;line-height:1.7;letter-spacing:2px}.hero-bottom{position:absolute;bottom:24px;left:6%;right:6%;display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.5px}.ribbon{background:#54213f;color:#ffe7d7;display:flex;gap:30px;justify-content:space-around;align-items:center;padding:20px 25px;font-size:17px;overflow:hidden}.ribbon span{font-size:9px;letter-spacing:2px;white-space:nowrap}.section{padding:100px 8%;scroll-margin-top:20px}h2{font-size:clamp(37px,4vw,57px);margin-bottom:30px}.story,.universe{display:grid;grid-template-columns:1fr 1fr;gap:10%}.story-content p{font-size:14px;line-height:1.95;max-width:510px}.story-content .lead{font-family:'Playfair Display',Georgia,serif;font-size:26px;line-height:1.45;margin-bottom:25px}.text-link{display:inline-block;font-size:12px;padding:10px 0;border-bottom:1px solid #9f5e7e}.journey{background:#f4e6df;padding-top:75px;padding-bottom:80px}.journey-heading{text-align:center}.timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:50px}.timeline article{position:relative;padding-top:32px;border-top:1px solid #b88b9d}.timeline .number{position:absolute;top:-17px;left:0;background:#f4e6df;padding-right:15px;font-family:Georgia,serif;font-style:italic;color:var(--pink);font-size:22px}.timeline h3{font-size:28px;letter-spacing:-.6px}.timeline .eyebrow{margin:10px 0 20px;font-size:9px}.timeline p:last-child{font-size:13px;line-height:1.9}.section-title>p:last-child{font-size:14px}.accordion details{border-top:1px solid var(--line)}.accordion details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;display:flex;align-items:center;gap:15px;padding:24px 0;cursor:pointer;font-family:'Playfair Display',Georgia,serif;font-size:25px;line-height:1.4}summary::-webkit-details-marker{display:none}summary span{font-family:'DM Sans',sans-serif;font-size:10px;color:var(--pink)}summary b{margin-left:auto;font-family:'DM Sans',sans-serif;font-size:20px;font-weight:400}details[open] summary b{transform:rotate(45deg)}details>div{padding:0 20px 30px 30px}details h3{font-family:'DM Sans',sans-serif;font-size:14px;letter-spacing:0;line-height:1.7}details p{font-size:13px;line-height:1.9}.quote{text-align:center;padding:80px 6%;background:radial-gradient(ellipse at 50% 0,#fbd0b8,transparent 75%),#edabd0}.quote>span{font-size:42px;color:var(--pink)}.quote p{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:clamp(26px,3.4vw,46px);line-height:1.4;margin:20px 0 30px}.quote small{font-size:8px;letter-spacing:2px}.contact{text-align:center;padding-top:95px;padding-bottom:95px}.contact h2{font-size:clamp(42px,5vw,68px)}.contact>p:not(.eyebrow){font-size:14px;margin-bottom:30px}.profile{display:block;margin-top:20px;font-size:11px}footer{margin:0 6%;border-top:1px solid var(--line);padding:35px 0;display:flex;justify-content:space-between;align-items:center;gap:20px}footer p{margin:0;font-size:8px;letter-spacing:1.5px}footer>a:last-child{font-size:11px}.skip{position:absolute;top:-60px;background:white;padding:10px;z-index:20}.skip:focus{top:0}@media(min-width:1500px){.hero,.section{padding-left:max(8%,calc((100vw - 1300px)/2));padding-right:max(8%,calc((100vw - 1300px)/2))}}@media(max-width:800px){header{height:90px;padding:0 6%}.brand{font-size:27px}.brand span{font-size:7px;letter-spacing:1.3px}nav{gap:18px}nav a{font-size:11px}nav a:nth-child(2){display:none}.nav-contact{padding:8px 13px;gap:12px}.hero{padding-top:50px;grid-template-columns:1fr;min-height:0;padding-bottom:80px}.hero-copy{z-index:1}h1{font-size:58px}.hero-art{min-height:405px;max-width:520px;width:100%;margin:20px auto 5px}.orbit{width:110%;top:-12%;left:-5%;height:115%}.portrait{width:80%;top:15%;left:10%}.hello{top:70%;font-size:30px}.s1{top:0}.hero-bottom{font-size:7px}.hero-bottom span{max-width:45%}.ribbon{justify-content:flex-start;gap:25px;padding:17px 20px}.section{padding:65px 7%}.story,.universe{grid-template-columns:1fr;gap:25px}.timeline{grid-template-columns:1fr;gap:35px}.timeline article{padding-top:18px}.journey-heading{text-align:left}.timeline h3{margin-bottom:16px}.timeline p:last-child{max-width:500px}h2{font-size:42px}.quote{padding:55px 7%}.contact h2{font-size:46px}footer{flex-wrap:wrap}footer p{order:3;width:100%}.hero-art .art-label{right:4%;bottom:0}}@media(max-width:390px){h1{font-size:49px}.hero-art{min-height:345px}.hello{font-size:26px}nav{gap:12px}.brand span{letter-spacing:.8px}.nav-contact{gap:8px}.hero-bottom{font-size:6px}summary{font-size:22px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.nav-contact{background:var(--pink);border-color:var(--pink);color:white;transition:background .2s}.nav-contact:hover{color:white;background:#7f1355}@media(max-width:800px){nav a:nth-child(2){display:inline-block}nav a:first-child{display:none}.brand span{font-size:6px;letter-spacing:1px}}

.service-note{font-size:12px;line-height:1.8;margin:22px 0 8px;max-width:360px;color:#74465f}

.whatsapp-float{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:calc(24px + env(safe-area-inset-bottom));z-index:50;display:flex;align-items:center;gap:10px;padding:14px 20px;border-radius:40px;background:#176c43;color:#fff;box-shadow:0 5px 24px #123b312b;font-size:14px;font-weight:600;min-height:54px;transition:background .2s,transform .2s}.whatsapp-float:hover{background:#105334;transform:translateY(-2px)}.whatsapp-float svg{flex-shrink:0}.whatsapp-contact{display:table;margin:22px auto 0;border-bottom:1px solid var(--line);padding:6px 0}@media(max-width:800px){.whatsapp-float{right:16px;bottom:calc(16px + env(safe-area-inset-bottom));padding:13px 17px}footer{padding-bottom:100px}}

.portrait img{width:100%;height:100%;left:0;top:0;object-fit:cover;object-position:50% 40%;transform:rotate(5deg) scale(1.1)}

.arrow-icon{display:inline-block;width:1em;height:1em;vertical-align:-.12em;flex-shrink:0}.arrow-down-right{transform:rotate(90deg)}.arrow-down{transform:rotate(135deg)}.arrow-up{transform:rotate(-45deg)}.button .arrow-icon,.nav-contact .arrow-icon{width:19px;height:19px}.button>span,.nav-contact>span{display:inline-flex;align-items:center}.text-link .arrow-icon,.profile .arrow-icon{margin-left:4px}

.service-booking-links{display:flex;flex-wrap:wrap;gap:10px 24px}

.brand{display:inline-flex;align-items:center;gap:8px}.brand .brand-wordmark{display:block;font-family:'Playfair Display',Georgia,serif;font-size:32px;letter-spacing:-1.6px;margin:0;line-height:1.1}.brand .brand-wordmark>span{display:block;font-family:'DM Sans',Arial,sans-serif;font-size:8px;letter-spacing:2px;margin-top:11px}.brand-feather{display:block;flex:0 0 auto;width:42px;height:42px}@media(max-width:800px){.brand{gap:5px}.brand .brand-wordmark{font-size:27px}.brand .brand-wordmark>span{font-size:6px;letter-spacing:1px}.brand-feather{width:30px;height:36px}}@media(max-width:390px){header nav{gap:8px}.brand-feather{width:24px}.brand .brand-wordmark{font-size:24px}.brand .brand-wordmark>span{letter-spacing:.7px}header{padding-left:4%;padding-right:4%}.nav-contact{padding:8px 11px}}

.brand-feather{width:55px;height:40px;object-fit:contain;filter:drop-shadow(0 1px 1px #48223b88);transform:rotate(-12deg)}@media(max-width:800px){.brand-feather{width:35px;height:32px}}@media(max-width:390px){.brand-feather{width:27px;height:29px}}

.brand-feather{width:40px;height:58px;object-fit:contain;filter:none;transform:none}@media(max-width:800px){.brand-feather{width:30px;height:44px}}@media(max-width:390px){.brand-feather{width:25px;height:38px}}

.story-spiral{display:block;width:210px;height:auto;max-width:65%;margin:30px 0 0 22px;opacity:.85}@media(max-width:800px){.story-spiral{width:150px;margin:15px 0 10px 12px}}

.story-spiral{width:290px;max-width:80%;margin:20px 0 0 5px;opacity:1}@media(max-width:800px){.story-spiral{width:210px;margin:5px 0 5px}}

.story-statement{font-size:clamp(30px,3.15vw,44px);line-height:1.22;letter-spacing:-1.1px}.story-statement>span{display:block;margin-top:18px}.story-statement+.story-spiral{width:230px;margin-top:12px}@media(max-width:800px){.story-statement{font-size:34px}.story-statement+.story-spiral{width:185px}}

.story-statement+.story-galaxy{display:block;width:225px;max-width:70%;height:auto;object-fit:contain;margin:25px auto 0;opacity:1}@media(max-width:800px){.story-statement+.story-galaxy{width:190px;margin:25px auto 15px}}
