:root{--red:#b50020;--red-dark:#710417;--gold:#b98a2a;--ink:#2e1920;--cream:#fff9f5}body{background:#fffdfb}header{border-bottom:3px solid #c59a48;box-shadow:0 4px 24px #4d09130b}.luxury-hero{background:#fff8ec url('assets/hero-ornament.webp') center/cover no-repeat;border-bottom:0;isolation:isolate}.luxury-hero:before{content:'';position:absolute;inset:18px;border:1px solid #c89a4877;pointer-events:none;z-index:-1}.luxury-hero .hero-grid{grid-template-columns:1fr 1.05fr;gap:8px;padding-top:50px;padding-bottom:0;align-items:center}.luxury-hero .hero-copy{padding-bottom:38px;position:relative;z-index:3}.luxury-hero .hero-kicker{background:var(--red);color:white;border:1px solid #d6b262;padding:6px 20px;box-shadow:4px 4px 0 #d3ad57;font-size:1.1rem;transform:rotate(-2deg);margin-bottom:26px}.luxury-hero h1{font-size:clamp(3.2rem,5.1vw,4.65rem);line-height:1.32;letter-spacing:.01em;text-shadow:3px 3px 0 #fff,5px 5px 0 #d1a74642}.luxury-hero h1>span{font-size:.65em}.luxury-hero h1 em{font-size:1.18em;background:linear-gradient(130deg,#7e4710 0%,#ab7019 25%,#d0a638 43%,#8b5010 66%,#b58924 100%);color:#906015;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-shadow:none}.luxury-hero .lead{font-size:1rem}.luxury-hero .hero-service{font-size:1.45rem;margin:20px 0 14px}.luxury-hero .hero-actions{gap:12px}.luxury-hero .hero-actions .button{flex:1;flex-direction:column;gap:3px;padding:13px 16px}.hero-actions .button>span{font-size:.75rem;font-weight:500}.hero-actions .button>b{font-size:1rem}.portrait-stage{position:relative;align-self:end;height:650px;overflow:visible;animation:enter 1s both}.portrait-halo{position:absolute;inset:17% 0 3%;border-radius:50%;background:radial-gradient(circle,#fff4c999 0%,#d7b55e33 62%,transparent 63%);border:2px solid #c49b48;transform:scale(.93);z-index:-1}.host-portrait{position:absolute;bottom:0;left:-7%;width:115%;max-width:none;height:auto;max-height:100%;object-fit:contain;object-position:bottom;filter:drop-shadow(0 12px 14px #60200023)}.speech{position:relative;background:white;color:var(--red-dark);border:3px solid var(--gold);border-radius:50% 50% 48% 48%;padding:24px 28px;text-align:center;line-height:1.7;box-shadow:0 8px 22px #51111b18;font-size:1.2rem;font-weight:700}.speech:after{content:'';position:absolute;bottom:-12px;left:40%;width:20px;height:20px;background:#fff;border-right:3px solid var(--gold);border-bottom:3px solid var(--gold);transform:rotate(45deg)}.speech strong{font-size:1.25em;color:var(--red)}.hero-speech{position:absolute;top:2%;right:-8px;z-index:4;transform:rotate(7deg);animation:bubble-in 1s .4s both}.host-label{position:absolute;bottom:30px;right:12px;background:linear-gradient(125deg,#75020e,#bd0525 55%,#75020e);color:white;border:2px solid #e5c775;padding:12px 26px;box-shadow:4px 4px 0 #a27326;transform:rotate(-4deg);text-align:center;z-index:4}.host-label>span{display:block;font-size:.8125rem;letter-spacing:.08em}.host-label strong{font-family:'Yu Mincho',serif;font-size:2.5rem;letter-spacing:.12em;line-height:1.4}.host-label strong span{color:#ffdb81}.hero-ribbon{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 28px;background:linear-gradient(110deg,#740018,#b10020,#760014);border-block:4px solid #d6ad52;position:relative;z-index:5;font-size:1rem;padding:20px}.hero-ribbon span+span{border-left:1px solid #d6ad5277;padding-left:28px}.gold-dust{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:-1}.gold-dust i{position:absolute;left:4%;top:25%;width:9px;height:16px;background:linear-gradient(45deg,#ac7e20,#ffe298);transform:rotate(24deg);animation:gold-float 7s ease-in-out infinite}.gold-dust i:nth-child(2){left:48%;top:12%;animation-delay:-2s}.gold-dust i:nth-child(3){left:91%;top:55%;animation-delay:-4s}.gold-dust i:nth-child(4){left:7%;top:78%;animation-delay:-1s}.gold-dust i:nth-child(5){left:57%;top:80%;animation-delay:-3s}.gold-dust i:nth-child(6){left:96%;top:9%;animation-delay:-5s}.motion-toggle{position:absolute;bottom:86px;left:12px;z-index:6;background:#fff;border:1px solid #ab8745;border-radius:20px;padding:6px 12px;color:#72522a;font-size:.75rem;cursor:pointer}.trust{background:#fff}.trust .wrap{padding-block:26px}.trust p:before{content:'✓';display:inline-block;color:var(--gold);margin-right:10px;font-size:1.25rem}.section{padding-block:84px}.section>.eyebrow,.section>h2{text-align:center}.scene-intro{text-align:center;margin-bottom:64px}.mini-label{font-size:1.1rem;font-weight:800;color:var(--red);margin-bottom:28px}.concern-bubbles{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;max-width:950px;margin:auto}.concern-bubbles p{position:relative;padding:24px 16px;background:#fff;border:2px solid #dcc793;border-radius:18px;font-size:1rem;box-shadow:5px 5px 0 #f4ead6}.concern-bubbles p:after{content:'';position:absolute;bottom:-10px;left:calc(50% - 10px);width:18px;height:18px;background:#fff;border-right:2px solid #dcc793;border-bottom:2px solid #dcc793;transform:rotate(45deg)}.concern-bubbles b{font-size:1.2rem;color:var(--red)}.scene-photo{border-radius:0;outline:1px solid var(--gold);outline-offset:8px;margin:40px 8px}.scene-photo figcaption{font-size:1.8rem}.scenes article{padding-inline:22px;background:#fff;border:1px solid var(--line);border-bottom:4px solid var(--gold);padding-top:24px}.items-section{background:linear-gradient(115deg,#78071a,#b70525 60%,#7a071a);border-block:5px solid #c29a4c}.collection-photo{display:grid;grid-template-columns:1.3fr 1fr;background:white;color:var(--ink);margin:8px 0 30px;border:3px solid #d4ad58;box-shadow:0 14px 40px #39010d33}.collection-photo img{width:100%;display:block}.collection-photo figcaption{align-self:center;padding:28px;font-family:'Yu Mincho',serif;font-weight:800;font-size:2rem;line-height:1.8}.collection-photo small{display:block;font-family:sans-serif;font-weight:400;font-size:.75rem;color:var(--muted);margin-top:16px}.items{gap:18px}.items article{box-shadow:0 8px 18px #3d04131c;border-radius:0}.items article:before{float:right;font-size:2.5rem;opacity:.55;margin-left:10px}.items b{padding-bottom:12px;border-bottom:1px solid #e7d3a2}.promise-heading{display:flex;align-items:center;justify-content:center;gap:32px;margin-bottom:32px}.promise-heading img{width:160px;flex-shrink:0}.promise-heading h2{margin-bottom:0}.promises article{padding:28px;border:1px solid var(--line);border-top:5px solid var(--gold);background:white}.methods article{border-top:5px solid var(--gold);background:linear-gradient(#fff,#fff9f5);box-shadow:0 12px 24px #60000d0a}.steps{counter-reset:step}.steps li{position:relative;padding-top:60px;border:1px solid #d9be81}.steps li:before{position:absolute;top:-14px;left:20px;padding:10px 18px;background:var(--red);color:#fff;box-shadow:3px 3px 0 #d2ad58}.host-invitation{background:linear-gradient(100deg,#fff9ee,#fff 65%);border-block:3px solid var(--gold);overflow:hidden}.invitation-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:60px;align-items:center}.invitation-person{height:500px;position:relative;align-self:end}.invitation-person img{position:absolute;bottom:-70px;left:-5%;width:115%;max-width:none}.invitation-person .speech{position:absolute;top:30px;left:0;font-size:1rem;transform:rotate(-6deg);padding:16px 22px}.invitation-copy{padding-block:50px}.invitation-copy h2{margin-bottom:20px}.invitation-copy h2 span{color:var(--red)}.invitation-copy .button{margin-top:24px}.faqs{margin:auto}.faqs details{background:#fff;border:1px solid var(--line);margin-bottom:12px;padding-inline:22px;border-radius:5px}.faqs summary::marker{color:var(--red)}.consult{background:linear-gradient(115deg,#710315,#ae0826);border-block:5px solid var(--gold)}.consult-form{border:2px solid #d7af59;box-shadow:0 20px 40px #42000a33}.button{position:relative;overflow:hidden}.button:after{content:'';position:absolute;inset:-60% auto -60% -55%;width:25%;background:linear-gradient(90deg,transparent,#ffffff30,transparent);transform:rotate(20deg);animation:button-glint 7s ease-in-out infinite;pointer-events:none}.sticky-contact{border-color:#e3bf68;box-shadow:0 8px 40px #3f061955}.motion-paused *, .motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important}.motion-paused .reveal{transition:none!important}.motion-paused .is-pending{opacity:1!important;transform:none!important}@keyframes gold-float{0%,100%{transform:translateY(0) rotate(24deg);opacity:.5}50%{transform:translateY(-22px) rotate(70deg);opacity:.9}}@keyframes button-glint{0%,65%{left:-55%}90%,100%{left:135%}}@keyframes bubble-in{from{opacity:0;transform:translateY(12px) rotate(7deg) scale(.95)}to{opacity:1;transform:translateY(0) rotate(7deg) scale(1)}}
@media(max-width:1050px){.portrait-stage{height:580px}.hero-speech{font-size:1rem;right:0;padding:18px 22px}.luxury-hero h1{font-size:3.5rem}.luxury-hero .hero-actions{flex-direction:column}.luxury-hero .hero-actions .button{flex-direction:row;gap:12px}.invitation-person{height:440px}.invitation-grid{gap:30px}}
@media(max-width:700px){.luxury-hero .hero-grid{grid-template-columns:1fr;padding-top:30px;gap:0}.luxury-hero:before{inset:10px}.luxury-hero .hero-copy{padding-bottom:10px}.luxury-hero .hero-kicker{font-size:1rem;margin-bottom:18px}.luxury-hero h1{font-size:clamp(2.8rem,11.5vw,4.7rem);line-height:1.22}.luxury-hero h1>span{font-size:.7em}.luxury-hero .hero-service{font-size:1.3rem;margin:18px 0 12px}.luxury-hero .lead{font-size:1rem}.luxury-hero .hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.luxury-hero .hero-actions .button{flex-direction:column;padding:13px 6px;gap:2px}.hero-actions .button>b{font-size:.875rem}.hero-actions .button>span{font-size:.75rem}.portrait-stage{height:420px;max-width:440px;width:100%;margin:0 auto}.host-portrait{left:0;width:100%}.hero-speech{top:16px;right:0;font-size:.875rem;padding:16px 20px}.host-label{bottom:20px;right:12px;padding:8px 18px}.host-label strong{font-size:2rem}.portrait-halo{inset:20% 6% 0}.hero-ribbon{gap:8px 15px;font-size:.8125rem;letter-spacing:0;padding:15px 20px}.hero-ribbon span+span{padding-left:0;border:0}.motion-toggle{bottom:88px;font-size:.75rem;left:8px}.section{padding-block:54px}.scene-intro{margin-bottom:44px}.concern-bubbles{gap:12px;grid-template-columns:1fr}.concern-bubbles p{padding:14px 18px}.concern-bubbles p br{display:none}.concern-bubbles p:after{display:none}.concern-bubbles b{font-size:1.1rem;margin-left:8px}.scene-photo{margin:30px 6px;outline-offset:5px}.scene-photo figcaption{font-size:1.35rem}.collection-photo{grid-template-columns:1fr}.collection-photo figcaption{font-size:1.35rem;padding:18px;text-align:center}.collection-photo small{margin-top:6px}.promise-heading{gap:16px;align-items:center}.promise-heading img{width:85px}.promise-heading h2{font-size:1.55rem}.promise-heading .eyebrow{margin-bottom:8px}.promises article{padding:24px}.steps{row-gap:32px;margin-top:40px}.invitation-grid{grid-template-columns:1fr;gap:0}.invitation-copy{grid-row:1;text-align:center;padding-block:38px 10px}.invitation-copy h2{font-size:1.9rem}.invitation-copy p br{display:none}.invitation-person{height:300px;width:300px;max-width:100%;margin:auto}.invitation-person img{width:100%;left:0;bottom:-70px}.invitation-person .speech{top:24px;left:-12px;font-size:.8125rem;padding:12px 18px}.faqs details{padding-inline:16px}.items article:before{font-size:1.9rem}.trust .wrap{padding-block:20px}.sticky-contact{border-top-color:#dab760}}
@media(max-width:360px){.portrait-stage{height:355px}.host-label strong{font-size:1.6rem}.hero-speech{font-size:.8125rem;right:0}.luxury-hero .hero-actions{grid-template-columns:1fr}.promise-heading img{width:65px}.promise-heading h2{font-size:1.4rem}}
@media(prefers-reduced-motion:reduce){.gold-dust i,.button:after,.hero-speech{animation:none}.motion-toggle{display:none}}
/* Keep the supplied portrait intact, blending its white studio field into the white stage. */
.portrait-stage{background:radial-gradient(ellipse at 50% 65%,#fff 0 65%,transparent 72%)}.host-portrait,.invitation-person img{mix-blend-mode:multiply}.portrait-halo{display:none}.invitation-person{isolation:isolate;background:radial-gradient(ellipse at center,#fff 0 60%,transparent 72%)}
@media(max-width:700px){.portrait-stage{height:470px}.hero-speech{top:0;left:0;right:auto;padding:14px 18px}.host-portrait{max-height:390px}.luxury-hero{background-size:auto 100%;background-position:center}.luxury-hero .hero-copy{background:rgba(255,255,255,.9);border-radius:8px;padding:18px 10px}.motion-toggle{bottom:90px}}
@media(max-width:360px){.portrait-stage{height:420px}.host-portrait{max-height:340px}}
