
:root{--ink:#342745;--violet:#7051A4;--pink:#DE438A;--blue:#80BCE3;--line:#DAC8E9;--white:#FFFCFF}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--white);color:var(--ink);font:16px/1.7 system-ui,-apple-system,sans-serif}a{color:inherit}button{font:inherit}a,button{touch-action:manipulation}:focus-visible{outline:3px solid #7051A4;outline-offset:5px}.skip{position:fixed;top:-90px;left:20px;z-index:30;background:white;padding:12px}.skip:focus{top:12px}.header{position:fixed;inset:0 0 auto;z-index:20;padding:15px 5%;transition:background .3s,box-shadow .3s}.header.scrolled,.header:has(nav[data-open="true"]){background:rgba(255,252,255,.95);backdrop-filter:blur(12px);box-shadow:0 1px 0 #DAC8E966}.bar{max-width:1280px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.wordmark{text-decoration:none;font:italic 31px Georgia,serif;color:var(--violet)}.wordmark i{color:var(--pink);font-size:20px;font-style:normal;margin-left:5px}.nav{display:flex;gap:26px;align-items:center}.nav a{text-decoration:none;font-size:13px;padding:8px 0;min-height:44px;display:flex;align-items:center}.nav a:hover{color:var(--violet)}.nav .nav-cta{padding:9px 20px;border:1px solid #AF8CC6;border-radius:100px}.menu{display:none;min-height:44px;padding:8px 16px;background:white;border:1px solid var(--violet);border-radius:100px;color:var(--ink)}
.hero{min-height:100svh;padding:106px 24px 70px;text-align:center;position:relative;overflow:hidden;display:grid;place-items:center;background:linear-gradient(#ffffff12,#ffffff12),url('../images/fond-magique.webp') center/cover}.hero-inner{position:relative;z-index:2;max-width:950px}.hero-logo{display:block;margin:0 auto 5px;width:clamp(190px,22vw,270px);height:auto;mix-blend-mode:multiply}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.21em;color:#674A89;margin:12px 0 24px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400}h1{font-size:clamp(44px,5.8vw,78px);line-height:1.08;letter-spacing:-.035em;margin:0 auto 25px;max-width:900px}h1 em,h2 em{font-weight:400;color:var(--violet)}.intro{font-size:17px;max-width:580px;margin:0 auto 26px}.cta{display:inline-flex;gap:24px;align-items:center;justify-content:center;min-height:52px;padding:14px 28px;border-radius:100px;background:linear-gradient(110deg,#A54490,#7051A4);color:white;text-decoration:none;font-size:14px;box-shadow:0 8px 28px #976CB530;transition:transform .25s,box-shadow .25s}.cta:hover{transform:translateY(-3px);box-shadow:0 12px 30px #976CB54D}.secondary{display:block;font-size:13px;margin-top:17px;text-decoration-thickness:1px;text-underline-offset:5px}.spark{position:absolute;font:40px Georgia,serif;color:#9362B9;pointer-events:none;opacity:.5}.s1{top:29%;left:11%}.s2{right:10%;top:54%;color:#D65095;font-size:55px}.s3{left:18%;bottom:12%;color:#5594C1;font-size:22px}.s4{right:25%;top:15%;font-size:20px}.occasions{padding:28px 20px;display:flex;flex-wrap:wrap;justify-content:center;gap:14px 32px;color:#6E517E;font:italic 19px Georgia,serif;border-bottom:1px solid #EEE4F4}.occasions span:not(:last-child):after{content:'✦';font:10px Georgia;margin-left:32px;color:#C56FAA}
.wrap{max-width:1240px;margin:auto;padding:100px 6%}h2{font-size:clamp(36px,4.7vw,61px);line-height:1.12;letter-spacing:-.03em;margin:16px 0 25px}.essence{text-align:center;position:relative}.essence p.copy{max-width:630px;margin:auto;font-size:18px}.divider{display:flex;justify-content:center;align-items:center;gap:15px;color:#B270B0;margin-bottom:25px}.divider:before,.divider:after{content:'';width:70px;height:1px;background:linear-gradient(90deg,transparent,#D2A9DA)}.divider:after{transform:rotate(180deg)}.services{background:linear-gradient(130deg,#FFF5FB,#F2EDFC 62%,#F0F8FF)}.section-top{display:flex;align-items:end;justify-content:space-between;gap:35px}.section-top p{max-width:310px;margin-bottom:28px;font-size:14px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:25px}.card{background:#FFFFFFC9;border:1px solid #FFFFFF;border-radius:100px 100px 22px 22px;padding:42px 28px 30px;text-align:center;box-shadow:0 12px 40px #A37CB00B;transition:transform .25s}.card:hover{transform:translateY(-5px)}.icon{height:65px;display:grid;place-items:center;color:#A653A5;font:36px Georgia,serif}.card small{color:#74558C;font-size:10px;letter-spacing:.15em}h3{font-size:29px;line-height:1.2;margin:18px 0}.card p{font-size:14px}.feature{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:70px}.photo-frame{position:relative;padding:12px;border:1px solid #DFC6E6;border-radius:200px 200px 20px 20px;background:linear-gradient(130deg,#FFF0F8,#EAE3FC,#E3F3FB)}.photo-frame img{display:block;width:100%;height:auto;border-radius:190px 190px 12px 12px}.photo-frame:after{content:'✦';position:absolute;right:-15px;top:12%;font:48px Georgia;color:#C575B1;background:var(--white)}.feature p{max-width:420px}.feature .label{font-size:12px;color:#74558C}.process{text-align:center;background:#FCF8FE}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:40px}.step .num{font:italic 43px Georgia;color:#B784BE}.step p{font-size:14px;max-width:270px;margin:auto}.contact{text-align:center;background:linear-gradient(#ffffff40,#ffffff40),url('../images/fond-contact.webp') center/cover}.contact p{max-width:540px;margin:20px auto}.contact details{max-width:620px;margin:30px auto;text-align:left;border-top:1px solid #BA9ACD;border-bottom:1px solid #BA9ACD;padding:15px 0}.contact summary{cursor:pointer;min-height:44px;display:flex;align-items:center}.contact .note{font-size:12px;color:#5C4969}.footer{padding:25px 6%;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;font-size:12px;color:#655475}.footer .wordmark{font-size:23px}
@media(max-width:760px){.header{padding:12px 5%}.menu{display:block}.nav{position:absolute;top:68px;left:0;right:0;background:#FFFCFF;padding:20px 6%;flex-direction:column;align-items:stretch;gap:6px}.nav[data-open="false"]{display:none}.hero{padding-top:105px;min-height:95svh;background-size:cover}.hero-logo{width:205px}h1{font-size:46px}.intro{font-size:15px;max-width:350px}.s1{left:3%;font-size:22px}.s2{right:3%;font-size:26px}.wrap{padding:65px 6%}.cards,.feature,.steps{grid-template-columns:1fr;gap:26px}.section-top{display:block}.section-top p{max-width:100%}.card{border-radius:65px 65px 18px 18px;padding-top:28px}.photo-frame{max-width:470px;margin:auto}.feature{gap:38px}.occasions{gap:10px 20px;font-size:16px}.occasions span:not(:last-child):after{display:none}.steps{gap:30px}.hero:after{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Fotografías reales y galería de celebraciones */
.essence-photo{margin:48px auto 0;max-width:960px}.essence-photo img{display:block;width:100%;height:auto;border-radius:140px 140px 22px 22px}.essence-photo figcaption{margin-top:14px;font:italic 16px Georgia,serif;color:#74558C}
.card{overflow:hidden;padding:0 0 28px;border-radius:100px 100px 22px 22px}.service-photo{display:block;width:100%;height:260px;object-fit:cover;margin-bottom:28px}.car-photo{object-position:center 70%}.card small{display:block;padding:0 20px}.card h3,.card p{margin-left:24px;margin-right:24px}
.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin-top:30px}.gallery-grid figure{margin:0;min-width:0}.gallery-grid img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:28px}.gallery-grid figure:nth-child(3) img{object-position:center 40%}.gallery-grid figure:nth-child(4) img{object-position:center 35%}.gallery-grid figcaption{padding:18px 4px 0;font:24px/1.3 Georgia,serif}.gallery-grid figcaption span{display:block;margin-bottom:8px;font:10px/1.5 system-ui,sans-serif;text-transform:uppercase;letter-spacing:.16em;color:#74558C}
@media(max-width:760px){.essence-photo{margin-top:32px}.essence-photo img{border-radius:65px 65px 18px 18px}.card{padding:0 0 24px;border-radius:65px 65px 18px 18px}.service-photo{height:auto;aspect-ratio:4/3;margin-bottom:24px}.gallery-grid{grid-template-columns:1fr;gap:30px}.gallery-grid figcaption{font-size:23px}}

/* Servicios claros y transición más compacta hacia el coche */
.card .service-tagline{font:italic 17px/1.4 Georgia,serif;color:var(--violet);margin-top:-6px;margin-bottom:18px}.gallery{padding-bottom:40px}.gallery + .feature{padding-top:40px}
@media(max-width:760px){.gallery{padding-bottom:28px}.gallery + .feature{padding-top:28px}}
