/* Preserve the composite photograph's intrinsic aspect ratio when revealing
   its left and right halves. A fixed 100% height stretched both portraits. */
.compare-img{background-size:200% auto}
.compare-img.before{background-position:left top}
.compare-img.after{background-position:right top}
.compare{aspect-ratio:3/4}
.doll-portrait:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(to bottom,transparent,#593644 92%);pointer-events:none}
.doll-portrait>span{z-index:1;right:20px;bottom:26px;line-height:1.4;color:#fff4f7}
.about img{aspect-ratio:1.1;object-position:center top}
body,.comparison-section,.reviews,.constructor,.ribbon{background-image:url(assets/paper-texture.png);background-repeat:repeat;background-size:620px 620px;background-blend-mode:soft-light}
body:after{opacity:.10}
.section{position:relative}
.section-top-link{position:absolute;right:5%;bottom:22px;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:0;background:#ce829e;color:#fff;box-shadow:none;transition:transform .2s,background .2s;z-index:4}
.section-top-link:hover{color:#fff;background:#bc6e8b;transform:translateY(-3px);box-shadow:none}
.section-top-link:active{transform:translateY(0)}
.hero>.section-top-link{right:0;bottom:16px}
@media(max-width:650px){.section>.section-top-link{right:6%;bottom:12px}.hero>.section-top-link{bottom:0}.hero .scroll{max-width:calc(100% - 56px)}}
.hero .photo-one img{object-position:50% 35%}
.hero .photo-two{width:250px;height:330px;top:420px}
.hero .photo-two img{object-position:center}
.hero .hero-photo{height:auto;display:flex;flex-direction:column;padding-bottom:0}
.hero .photo-one img{height:300px;flex:none}
.hero .photo-two img{height:280px;flex:none}
.hero .hero-photo figcaption{display:grid;place-items:center;min-height:52px;padding:9px 7px 11px;line-height:1.3;font-size:12px;overflow-wrap:normal}
.hero .hero-note{top:800px}
@media(max-width:1000px){.hero .photo-two{width:210px;height:275px;top:390px}}
@media(max-width:650px){.hero .photo-two{width:175px;height:220px;top:650px}}
@media(max-width:1000px){.hero .photo-one img{height:225px}.hero .photo-two img{height:220px}.hero .hero-photo{height:auto}.hero .hero-note{top:700px}}
@media(max-width:650px){.hero{min-height:1040px}.hero .photo-one img{height:184px}.hero .photo-two img{height:190px}.hero .hero-photo{height:auto}.hero .hero-photo figcaption{min-height:48px;font-size:12px;line-height:1.25;padding:8px 5px 10px}.hero .hero-note{top:935px}}
.socials{gap:12px;flex-wrap:wrap}
.socials a{display:inline-flex;justify-content:center;align-items:center;min-height:52px;min-width:155px;padding:13px 24px;border:1px solid #d4a4b8;border-radius:999px;font-size:14px;line-height:1.4;color:#fff4f7;background:#ffffff05;transition:background .2s,color .2s,border-color .2s,transform .2s}
.socials a:hover{background:#edbbcd;border-color:#edbbcd;color:#482634;transform:translateY(-2px)}
.socials a:active{transform:translateY(0)}
.contact .socials{gap:18px}
.button,.controls .button,.nav-order,.choices button,.choices button[aria-pressed],.contact .socials a,.contact>.button{display:inline-flex;align-items:center;text-align:center;max-width:100%;white-space:normal;position:relative;isolation:isolate;justify-content:center;min-height:78px;min-width:0;padding:20px 36px;border:1px solid #fff0f5b3;border-radius:999px;color:#432333;font-family:Inter,Arial,sans-serif;font-weight:700;font-size:clamp(18px,2vw,24px);line-height:1.3;letter-spacing:-.03em;background:radial-gradient(ellipse at 48% 115%,#fff8fa 0%,#fff4f6aa 22%,transparent 58%),radial-gradient(ellipse at 6% 25%,#dda6c9 0%,transparent 61%),radial-gradient(ellipse at 95% 30%,#d7c4e6 0%,transparent 60%),linear-gradient(115deg,#ecc4d8,#f4d6e1 55%,#e7bdd6);box-shadow:inset 0 2px 4px #fff9,inset 0 -3px 7px #f8eaf3aa,0 4px 10px #2c16231a;transition:transform .2s,box-shadow .2s}
.contact .socials a:hover,.contact>.button:hover{color:#432333;transform:translateY(-3px);box-shadow:inset 0 2px 5px #fffc,inset 0 -3px 7px #fff9,0 8px 16px #2c16232b}
.contact .socials a:active,.contact>.button:active{transform:translateY(0)}
.button:hover,.controls .button:hover,.nav-order:hover,.choices button:hover{color:#432333;background:radial-gradient(ellipse at 48% 115%,#fff8fa,transparent 65%),linear-gradient(115deg,#ecc4d8,#f4d6e1 55%,#e7bdd6);transform:translateY(-2px);box-shadow:inset 0 2px 5px #fffc,inset 0 -3px 7px #fff9,0 8px 16px #2c16232b}
.button:active,.controls .button:active,.nav-order:active,.choices button:active{transform:translateY(0)}
.nav-order{min-height:46px;padding:12px 20px;font-size:14px}
.choices button,.choices button[aria-pressed]{min-height:46px;padding:12px 18px;font-size:14px;letter-spacing:0}
.choices button[aria-pressed=true]{outline:2px solid #593644;outline-offset:2px}
.choices{gap:12px}
.controls .button{font-size:20px;width:100%;padding:18px 24px;min-height:70px}
@media(max-width:650px){header .nav-order{display:none}.button{padding:18px 24px;min-height:70px;font-size:20px}.controls .button{font-size:18px}}
.soon-gallery{display:grid;grid-template-columns:1fr 1fr;gap:40px;max-width:820px;margin:15px auto 50px;align-items:center}
.soon-product{position:relative;overflow:visible;border:0;background:transparent;box-shadow:none}
.soon-product.tray,.soon-product.ornament{transform:none;margin-top:0}
.teaser-photo{display:block;width:100%;height:auto;filter:none}
.still-ornament{display:none}
.mystery{position:absolute;left:50%;top:53%;transform:translate(-50%,-50%);display:grid;place-items:center;width:42px;height:42px;border:1px solid #fff5fa99;border-radius:50%;background:#583644df;color:#ffeef5;font:italic 30px/1 Georgia,serif;box-shadow:0 2px 10px #0002}
.ornament .mystery{top:61%}
@media(max-width:650px){.soon-gallery{gap:18px;margin:15px -3px 40px}.soon-product{border-width:5px}.soon-product.ornament{margin-top:30px}.mystery{width:30px;height:30px;font-size:24px}.contact .socials a,.contact>.button{min-height:82px;max-width:340px}.contact .socials{gap:14px}}
@media(prefers-reduced-motion:reduce){.animated-ornament{display:none}.still-ornament{display:block}}
@media(max-width:650px){.socials{display:grid;grid-template-columns:1fr;gap:12px;max-width:340px;margin-inline:auto}.socials a{width:100%;min-height:54px}.contact>.button{width:100%;max-width:340px;min-height:54px}}
@media(max-width:650px){.doll-portrait>span{font-size:22px;left:20px}.compare{max-height:none}}
@media(max-width:650px){.contact .socials{max-width:340px;gap:18px}.contact .socials a,.contact>.button{min-height:76px;font-size:24px;padding:20px 24px;min-width:0;width:100%;max-width:340px}}
.hero-photos{display:contents}
.contact .socials a,.contact>.button{width:260px;max-width:100%;min-height:62px;padding:8px 24px;font-family:"Great Vibes","Snell Roundhand","Palatino Linotype",cursive;font-size:36px;font-weight:400;line-height:1.15;letter-spacing:0;color:#593644}
.contact .socials a:hover,.contact>.button:hover{color:#593644}
.ribbon{font-size:16px;line-height:1.8}
@media(max-width:650px){.contact .socials{max-width:260px;gap:16px}.ribbon{font-size:14px;padding:22px 20px;line-height:1.9}}
.soon-gallery{margin-top:90px}
.soon-product{aspect-ratio:1/1.35}
.soon-product .teaser-photo{position:absolute}
.tray .teaser-photo{top:62%;transform:translateY(-50%) rotate(-4deg)}
.ornament .teaser-photo{inset:0;width:100%;height:100%;transform:rotate(4deg)}
.soon-product .mystery{top:62%;width:44px;height:44px;padding:0;z-index:2;cursor:pointer;transition:background .2s,box-shadow .2s}
.mystery:hover,.mystery[aria-expanded=true]{background:#b76f8e;box-shadow:0 0 0 4px #edbbcd25}
.soon-detail{position:absolute;bottom:calc(100% + 12px);left:0;width:100%;padding:16px 14px;border-radius:18px;background:#edc9d9;color:#4c2c3a;font:500 16px/1.45 Inter,Arial,sans-serif;box-shadow:0 8px 22px #28131c26;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .25s,transform .25s,visibility .25s;z-index:3}
.soon-detail:after{content:"";position:absolute;left:calc(50% - 7px);bottom:-7px;width:14px;height:14px;background:#edc9d9;transform:rotate(45deg)}
.mystery[aria-expanded=true]+.soon-detail{opacity:1;visibility:visible;transform:translateY(0)}
@media(max-width:650px){
 .hero{min-height:0;padding-bottom:32px}
 .hero-photos{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:0;margin:72px 0 45px;padding:0 2%}
 .hero .hero-photo{position:relative;inset:auto;width:100%;height:auto;min-width:0}
 .hero .photo-one{width:110%;transform:rotate(-9deg)}
 .hero .photo-two{width:120%;margin:30px 0 0 -20%;transform:rotate(6deg)}
 .hero .photo-one img{height:auto;aspect-ratio:.75}
 .hero .photo-two img{height:auto;aspect-ratio:.85}
 .hero .hero-photo figcaption{min-height:54px;font-size:clamp(12px,3.2vw,16px);line-height:1.3;padding:9px 5px 12px}
 .hero .hero-note{position:relative;inset:auto;text-align:right;margin:0 2% 44px}
 .hero .scroll{position:relative;inset:auto;margin-top:0}
 .hero>.section-top-link{bottom:20px}
 .soon-gallery{margin-top:105px}
 .soon-product.ornament{margin-top:0}
 .soon-detail{font-size:14px;padding:12px 10px}
}
