@font-face{font-family:Manrope;src:url('assets/manrope-latin-v3.woff2') format('woff2');font-style:normal;font-weight:400 800;font-display:swap}
:root{--font:'Manrope',Arial,sans-serif;--ease:cubic-bezier(.22,1,.36,1);--dur:1100ms;--dist:36px}
body,button,input,select,textarea{font-family:var(--font)}
h1,h2,h3,.brand>span,.ribbon,.process li>span,.summary p,.story-signature,.footer-inner>p,.thread-heart span,.hand-note{font-family:var(--font)}
h1,h2{font-weight:700;letter-spacing:-.055em}h1 em,h2 em,.brand i,.story-signature em{font-style:normal;font-weight:inherit}
h2{line-height:1.12;font-size:clamp(34px,3.65vw,52px)}h3{font-weight:600;letter-spacing:-.045em}
.brand>span{font-weight:650;font-size:22px;letter-spacing:-.8px}.brand small{font-family:var(--font);font-weight:500;letter-spacing:1.6px;font-size:7px}
.eyebrow{font-family:var(--font);font-weight:650;font-size:10px;letter-spacing:1.8px}.header nav{font-weight:550}.button{font-weight:650;letter-spacing:0}
.hero{min-height:0;aspect-ratio:1672/941;background:#e8c4ac;overflow:clip}
.hero-visual{position:absolute;inset:0;z-index:-1}.hero-photo{inset:0;z-index:auto}.hero-photo img{width:100%;height:100%;object-fit:contain;object-position:center;transform:none}
.hero-wash{z-index:0;pointer-events:none;background:linear-gradient(90deg,#fcf8f257 0%,#fcf8f21a 29%,transparent 46%)}
.hero-inner{min-height:0;height:100%;padding-top:clamp(32px,4.7vw,90px);padding-bottom:40px;z-index:1;pointer-events:none}
.hero-copy{max-width:450px;pointer-events:auto}.hero h1{font-size:clamp(46px,4.75vw,83px);line-height:1.06;margin-bottom:24px}
.hero .eyebrow{margin-bottom:22px}.intro{font-size:13px;line-height:1.85;margin-bottom:26px;max-width:360px;font-weight:500}.hero-actions{gap:22px}.hero-details{margin-top:25px;color:var(--ink);font-weight:550;gap:22px;font-size:10px}
.hand-note{z-index:2;top:auto;bottom:7%;right:4%;transform:none;background:#52332bc4;color:#fff;padding:13px 18px;border-radius:5px;text-align:left;font-size:15px;line-height:1.5;font-weight:500;letter-spacing:-.35px;box-shadow:0 4px 24px #442f2c14}
.hand-note i{font-style:normal;font-weight:750;font-size:18px}.hand-note svg{display:none}
.discover{bottom:15px;pointer-events:auto;letter-spacing:1.2px;font-size:8px}.hero .video-link{font-size:10px;font-weight:600}
.ribbon{font-size:14px;font-weight:550;letter-spacing:-.2px}.section-top>p{line-height:1.9}.card-bottom h3{font-size:25px}.story-signature em{font-size:23px;font-weight:650}.closing h2{font-size:46px}.footer-inner>p{font-size:12px;font-style:normal}
/* Photo windows open on scroll; text and controls always remain available. */
.motion-ready [data-reveal]{opacity:0;translate:0 var(--dist);transition:opacity var(--dur) var(--ease),translate var(--dur) var(--ease)}
.motion-ready [data-reveal].in-view{opacity:1;translate:0 0}
.motion-ready .flower-image{clip-path:inset(15% 23% 15% 23% round 4px);translate:0 55px;transition:clip-path 1.3s var(--ease),translate 1.3s var(--ease);transition-delay:var(--reveal-delay,0ms)}
.motion-ready .flower-card:nth-child(2) .flower-image{translate:0 -20px}
.motion-ready .flower-card.in-view .flower-image{clip-path:inset(0 round 4px);translate:0 0}
.motion-ready .card-bottom{opacity:.35;transition:opacity .7s var(--ease);transition-delay:var(--reveal-delay,0ms)}.motion-ready .flower-card.in-view .card-bottom{opacity:1}
.motion-ready .video-frame{clip-path:inset(12% 17% round 4px);transition:clip-path 1.3s var(--ease)}.motion-ready .video-frame.in-view{clip-path:inset(0 round 4px)}
.motion-ready .thread-heart path{stroke-dashoffset:120;animation:none;transition:stroke-dashoffset 1.8s var(--ease)}.motion-ready .thread-heart.in-view path{stroke-dashoffset:0}
@media(min-width:1600px){.hero{min-height:0}.hero-inner{min-height:0}.hero-photo img{object-position:center}}
@media(min-width:951px) and (max-width:1150px){.hero .eyebrow{font-size:8px;margin-bottom:15px}.hero h1{font-size:46px;margin-bottom:18px}.hero-inner{padding-top:30px}.intro{font-size:11px;line-height:1.75;margin-bottom:18px}.hero-details{margin-top:17px;font-size:9px}.hero-actions .button{min-height:46px}.hand-note{font-size:13px}.hand-note i{font-size:15px}}
@media(max-width:950px){
 .hero{display:flex;flex-direction:column;aspect-ratio:auto;min-height:0;background:var(--cream);overflow:visible}
 .hero-inner{order:0;position:relative;height:auto;min-height:0;padding:38px 0 26px;pointer-events:auto}
 .hero-visual{order:1;position:relative;inset:auto;z-index:0;width:100%;aspect-ratio:1672/941;overflow:hidden}
 .hero-photo{position:absolute;inset:0}.hero-photo img{object-fit:contain;object-position:center;height:100%;width:100%}
 .hero-wash{display:none}.hero-copy{max-width:620px}.hero h1{font-size:clamp(47px,7.4vw,68px);line-height:1.05;margin-bottom:22px;max-width:580px}.hero h1 br:nth-of-type(2){display:none}.hero h1 em::before{content:' '}
 .intro{font-size:13px;max-width:430px}.hero .desktop{display:none}.hero-actions{gap:24px}.hero-details{background:transparent;padding:0;margin-top:23px;gap:24px}.hero .eyebrow{font-size:9px;margin-bottom:21px}.discover{position:static;margin-top:20px;width:fit-content;background:transparent;padding:0;font-size:8px}
 .hand-note{top:auto;bottom:7%;right:4%;padding:10px 14px;font-size:13px;background:#52332bd9}.hand-note i{font-size:16px}
 .custom-layout{gap:40px}.header nav{gap:18px}.header nav a{font-size:11px}
}
@media(max-width:650px){
 .brand>span{font-size:15px;letter-spacing:-.5px;line-height:1.15}.brand i{display:block}.brand small{font-size:5.5px;letter-spacing:1.05px;margin-top:6px}.header{height:84px}.header>.button{font-size:10px}.hero-inner{padding-top:30px;padding-bottom:23px}
 .hero h1{font-size:47px;letter-spacing:-2.5px;margin-bottom:18px;line-height:1.07}.hero .eyebrow{font-size:7px;letter-spacing:1.4px;margin-bottom:18px}.intro{font-size:11px;line-height:1.85;margin-bottom:21px;max-width:320px}.hero .video-link{font-size:9px;max-width:125px;gap:7px}.hero-actions{gap:16px}.hero-actions>.button{font-size:11px;gap:24px}.hero-details{font-size:8px;gap:16px;margin-top:19px}.discover{font-size:6px;letter-spacing:1.1px;margin-top:14px;min-height:30px}.hero-visual{aspect-ratio:1672/941}
 .hand-note{bottom:7%;right:3%;padding:6px 9px;border-radius:3px;font-size:9px;line-height:1.4;letter-spacing:-.1px}.hand-note i{font-size:11px}
 .ribbon{font-size:11px;gap:13px;padding:15px 10px}h2,.story h2{font-size:34px;letter-spacing:-1.6px}.closing h2{font-size:32px}.card-bottom h3{font-size:25px}.process h3{font-size:17px}.summary p{font-size:15px}.story-signature em{font-size:20px}.footer-inner>.brand>span{font-size:15px}.motion-ready .flower-image{clip-path:inset(10% 17%);translate:0 28px}.motion-ready .flower-card:nth-child(2) .flower-image{translate:0 28px}.motion-ready .flower-card.in-view .flower-image{clip-path:inset(0);translate:0 0}
}
@media(prefers-reduced-motion:reduce){.motion-ready [data-reveal],.motion-ready .flower-image,.motion-ready .video-frame{opacity:1;translate:none;clip-path:none;transition:none}.motion-ready .card-bottom{opacity:1}}

/* Logo oficial y posición original del lema. */
.header .brand img{width:190px;height:100px;object-fit:contain;border-radius:0}.footer-inner .brand img{width:180px;height:102px;object-fit:contain;border-radius:0}
.hand-note{top:40px;right:5%;bottom:auto;transform:rotate(8deg);background:transparent;box-shadow:none;padding:0;text-align:center;color:#fff;text-shadow:0 2px 12px #442f2c99}
@media(max-width:950px){.hand-note{top:25px;right:5%;bottom:auto;background:transparent;padding:0}}
@media(max-width:650px){.header .brand img{width:145px;height:82px}.footer-inner .brand img{width:145px;height:82px}.hand-note{top:12px;right:5%;bottom:auto;font-size:10px}.hand-note i{font-size:12px}}


/* Cabecera y pie integrados con el rosa exacto del logo oficial. */
body{background:linear-gradient(#ffe5e8,#ffe5e8) top/100% 159px no-repeat,var(--cream)}.header{height:118px;background:#ffe5e8;position:relative;isolation:isolate}.header::before{content:'';position:absolute;inset:0 calc((min(1280px,100vw - 112px) - 100vw)/2);background:#ffe5e8;z-index:-1;pointer-events:none}.header .brand img{height:86px;width:174px}.announcement{background:#f2d4da}footer{background:#ffe5e8}.footer-inner .brand img{height:88px;width:170px}.header>.button{border-color:#c28a97}.header nav a{color:var(--wine)}@media(max-width:1100px){.header::before{inset:0 -32px}}@media(max-width:650px){.header{height:100px}.header::before{inset:0 -20px}.header .brand img{height:76px;width:137px}.footer-inner .brand img{height:76px;width:137px}}


/* Fotografías y ajuste móvil 2026-11-09. */
.icon-arrow{display:inline-block;width:18px;height:18px;vertical-align:middle;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.6}
.icon-flower{display:inline-block;width:19px;height:19px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.3}
.play svg{width:22px;height:22px}.flower-options b .icon-flower{width:29px;height:29px}.ribbon b .icon-flower{width:16px;height:16px}
.flower-image{aspect-ratio:1/1.04}.flower-image img{object-fit:contain;background:#f1ece5}.image-label{font-size:8px;top:12px;left:12px;padding:5px 8px}
@media(max-width:650px){
 .header{height:82px}.header .brand img{width:130px;height:68px}.header>.button{min-height:44px;padding:8px 12px;gap:12px}
 .hero-inner{padding:22px 0 18px}.hero .eyebrow{margin-bottom:14px;font-size:8px;letter-spacing:1.2px}.tiny-flower{margin-right:5px}.tiny-flower .icon-flower{width:17px;height:17px}
 .hero h1{font-size:clamp(33px,9.4vw,40px);letter-spacing:-1.8px;line-height:1.08;margin-bottom:14px}.intro{font-size:12px;line-height:1.75;margin-bottom:18px;max-width:355px}
 .hero-actions{gap:17px;justify-content:flex-start}.hero-actions>.button{min-height:46px;padding:10px 18px;gap:19px}.hero .video-link{font-size:10px;max-width:130px;line-height:1.4}.hero-details{margin-top:16px;font-size:9px;gap:15px}.hero-details span{gap:5px}.discover{display:none}
 .hero-visual{aspect-ratio:1672/941}.hand-note{font-size:9px;top:10px;right:4%;text-shadow:0 1px 5px #442f2c}.hand-note i{font-size:11px}
 .flower-image{aspect-ratio:1/1.04}.section{padding-top:46px}.image-label{font-size:7px}.field-row select,textarea{font-size:16px}
}
@media(max-width:365px){.hero-actions{gap:12px}.hero .video-link{font-size:9px}.hero-details{gap:11px;font-size:8px}}
