/* Zeferina Boutique — diseño "Mar": luz de La Paz, verde mar profundo, rojo de la marca y fotos en arco. */
/* Lo marcado como oculto nunca se muestra, aunque otra regla le ponga display */
[hidden]{display:none!important}
:root{--bg:#F6F8F7;--paper:#fff;--sand:#F3E4D3;--blush:#F6DAD6;--mist:#D6E7E3;--gold:#D9B77E;--ink:#10333A;--mute:#567075;--line:#D3DEDB;--accent:#9B1B1E;--accent-d:#7C1518;--sea:#0E3A42;--ok:#23684F;
  --disp:"Fraunces",Georgia,serif;--body:"Instrument Sans",system-ui,sans-serif;--r:14px;--pad:clamp(16px,3.2vw,44px);--gap:clamp(56px,8vw,112px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}
h1,h2,h3{font-family:var(--disp);font-weight:400;line-height:1.06;margin:0;letter-spacing:-.018em;text-wrap:balance;font-optical-sizing:auto}
p{margin:0 0 1em}.wrap{max-width:1320px;margin:0 auto;padding:0 var(--pad)}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}
.link{text-underline-offset:4px;text-decoration-thickness:1px}.link:hover{color:var(--accent)}

/* ---------- Barra superior y encabezado ---------- */
.top{background:var(--sea);color:#DCE7E4;font-size:.82rem}.top .wrap{display:flex;justify-content:space-between;gap:16px;padding-block:8px}.top a{color:#fff;white-space:nowrap}
header.site{position:sticky;top:0;z-index:30;background:rgba(246,248,247,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.hd{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;height:70px}
.brand{font-family:"Gloock",serif;font-size:1.55rem;letter-spacing:.07em;text-decoration:none;white-space:nowrap;line-height:1}
.brand i{display:inline-block;width:.33em;height:.33em;border-radius:50%;background:var(--accent);margin-left:.08em}
nav.main{display:flex;gap:clamp(14px,2.2vw,30px);justify-content:center;font-size:.97rem;overflow-x:auto;scrollbar-width:none;white-space:nowrap}
nav.main::-webkit-scrollbar{display:none}nav.main a{text-decoration:none;padding:8px 0;background:linear-gradient(var(--accent),var(--accent)) 0 100%/0 1.5px no-repeat;transition:background-size .25s}
nav.main a:hover,nav.main a[aria-current=page]{background-size:100% 1.5px}nav.main a:last-child{color:var(--accent);font-weight:500}
.tools{display:flex;gap:2px;align-items:center}.icon{border:0;background:none;width:42px;height:42px;display:grid;place-items:center;text-decoration:none;position:relative;border-radius:50%;transition:background .15s}
.icon:hover{background:var(--paper)}.icon svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linejoin:round;stroke-linecap:round}
.icon b{position:absolute;top:3px;right:1px;background:var(--accent);color:#fff;font-size:.66rem;min-width:17px;height:17px;border-radius:9px;display:grid;place-items:center;font-weight:600;padding:0 4px}
.search{display:none;border-top:1px solid var(--line);padding:12px 0 16px}.search.open{display:block}.search input{width:100%;border:0;border-bottom:1.5px solid var(--ink);background:none;padding:10px 0;font-size:1.2rem;outline:0;border-radius:0}

/* ---------- Botones ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:15px 28px;border:1.5px solid var(--sea);background:var(--sea);color:#fff;text-decoration:none;font-size:.98rem;font-weight:500;white-space:nowrap;text-align:center;transition:background .18s,border-color .18s,color .18s,transform .18s}
.btn:hover{background:#0A262C;border-color:#0A262C}.btn:active{transform:scale(.98)}
.btn.acc{background:var(--accent);border-color:var(--accent)}.btn.acc:hover{background:var(--accent-d);border-color:var(--accent-d)}
.btn.ghost{background:none;color:var(--ink)}.btn.ghost:hover{background:var(--sea);color:#fff}
.btn.white{background:#fff;border-color:#fff;color:var(--sea)}.btn.white:hover{background:var(--sand);border-color:var(--sand)}
.btn[disabled]{opacity:.42;cursor:not-allowed}.btn.block{display:flex;width:100%}.btn.sm{padding:10px 18px;font-size:.9rem}

/* ---------- Portada ---------- */
.hero{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(24px,4vw,72px);align-items:center;padding:clamp(28px,4.5vw,64px) 0 clamp(36px,5vw,72px)}
.hero h1{font-size:clamp(2.5rem,5.6vw,4.75rem);line-height:1.02}.hero .lead{font-size:1.14rem;color:var(--mute);max-width:44ch;margin:22px 0 30px}
.hero .cta{display:flex;gap:12px;flex-wrap:wrap}
.arches{display:grid;grid-template-columns:1fr 1.28fr 1fr;gap:clamp(8px,1.2vw,16px);align-items:end;position:relative}
.arch{border-radius:999px 999px var(--r) var(--r);overflow:hidden;background:var(--line);display:block;position:relative}
.arch img{width:100%;height:100%;object-fit:cover;object-position:50% 6%;transition:transform .7s cubic-bezier(.2,.7,.2,1)}a.arch:hover img{transform:scale(1.04)}
.arches .arch{aspect-ratio:1/2.05}.arches .arch:nth-child(2){aspect-ratio:1/2.2}.arches .arch:nth-child(1){margin-bottom:9%}.arches .arch:nth-child(3){margin-bottom:17%}
.arches::before{content:"";position:absolute;left:27.5%;right:27.5%;top:-14px;bottom:28%;border:1px solid var(--accent);border-bottom:0;border-radius:999px 999px 0 0;opacity:.55;pointer-events:none}
.arch .tagp{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);background:rgba(255,255,255,.94);color:var(--ink);border-radius:999px;padding:7px 14px;font-size:.82rem;white-space:nowrap}
/* El arco central entra una vez al cargar la portada */
@keyframes rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
.arches .arch{animation:rise .8s cubic-bezier(.2,.7,.2,1) both}.arches .arch:nth-child(1){animation-delay:.08s}.arches .arch:nth-child(3){animation-delay:.16s}
.facts-row{display:grid;grid-template-columns:repeat(4,1fr);background:var(--paper);border-radius:var(--r);border:1px solid var(--line)}
.facts-row div{display:flex;gap:12px;align-items:center;padding:18px 22px;font-size:.95rem;line-height:1.35}.facts-row div+div{border-left:1px solid var(--line)}
.facts-row svg{width:26px;height:26px;stroke:var(--accent);fill:none;stroke-width:1.4;flex:none;stroke-linecap:round;stroke-linejoin:round}

/* ---------- Secciones ---------- */
.sec{padding:var(--gap) 0}.sec.tight{padding-bottom:0}.band{background:var(--paper)}.band.sand{background:var(--sand)}
.sec-h{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:clamp(22px,3vw,36px);flex-wrap:wrap}
.sec-h h2{font-size:clamp(1.9rem,3.5vw,2.9rem)}.sec-h p{margin:8px 0 0;color:var(--mute);max-width:56ch}
.occ{display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(12px,1.6vw,22px)}.occ a{text-decoration:none;text-align:center}.occ .arch{aspect-ratio:1/1.5}
.occ b{font-family:var(--disp);font-weight:400;font-size:1.5rem;display:block;margin-top:14px;line-height:1.1}.occ small{color:var(--mute);font-size:.9rem}
.how{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;position:relative}
.how::before{content:"";position:absolute;left:12%;right:12%;top:30px;border-top:1.5px dashed var(--line)}
.how div{position:relative;text-align:center}.how .ic{width:60px;height:60px;border-radius:50%;background:var(--bg);border:1px solid var(--line);display:grid;place-items:center;margin:0 auto 16px}
.band .how .ic{background:var(--paper)}.how svg{width:26px;height:26px;stroke:var(--sea);fill:none;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.how h3{font-size:1.3rem;margin-bottom:6px}.how p{color:var(--mute);margin:0;font-size:.95rem}
.story{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(24px,5vw,80px);align-items:center}.story .arch{aspect-ratio:1/1.45;max-width:400px;justify-self:center;width:100%}
.story blockquote{margin:0;font-family:var(--disp);font-size:clamp(1.45rem,2.7vw,2.25rem);line-height:1.25;letter-spacing:-.012em}
.story cite{display:block;margin-top:22px;font-family:var(--body);font-style:normal;color:var(--mute);font-size:.98rem;letter-spacing:0}
.cita{background:var(--sea);color:#E3ECEA}.cita .in{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,80px);align-items:center}
.cita h2{font-size:clamp(2rem,3.8vw,3.1rem);color:#fff}.cita p{margin:18px 0 0;max-width:44ch}.cita ul{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:8px}.cita li{display:flex;gap:10px}.cita li::before{content:"";width:7px;height:7px;border-radius:50%;background:#E9B9A9;margin-top:.6em;flex:none}
.rev{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.rev figure{margin:0;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:26px}
.rev blockquote{margin:0;font-family:var(--disp);font-size:1.2rem;line-height:1.35}.rev figcaption{margin-top:16px;color:var(--mute);font-size:.92rem}.rev .st{color:#C8922E;letter-spacing:2px;margin-bottom:10px}
.ig{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(24px,4vw,64px);align-items:center}.ig h2{font-size:clamp(1.9rem,3.5vw,2.9rem)}.ig p{color:var(--mute);margin:14px 0 24px;max-width:40ch}
.ig .fr{border-radius:var(--r);overflow:hidden;border:1px solid var(--line);background:var(--paper)}.ig iframe{width:100%;height:480px;border:0;display:block}
.visit{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(24px,4vw,64px);align-items:stretch}.visit h2{font-size:clamp(1.9rem,3.5vw,2.9rem);margin-bottom:22px}
.visit iframe{width:100%;min-height:380px;height:100%;border:0;border-radius:var(--r)}.visit dl{margin:0 0 26px;display:grid;gap:16px}.visit dt{color:var(--mute);font-size:.88rem}.visit dd{margin:2px 0 0;font-size:1.08rem}

/* ---------- Tarjeta de vestido ---------- */
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(28px,3.4vw,44px) clamp(10px,1.4vw,20px)}
.card{text-decoration:none;display:block;min-width:0;position:relative}.card .im{position:relative;aspect-ratio:2/3;background:var(--line);border-radius:var(--r);overflow:hidden}
.card .im img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 8%}.card .im img+img{opacity:0;transition:opacity .3s}
@media(hover:hover){.card:hover .im img+img{opacity:1}}
.card .flag{position:absolute;left:10px;bottom:10px;background:rgba(255,255,255,.94);font-size:.76rem;padding:4px 10px;border-radius:999px}.card .flag.out{background:var(--sea);color:#fff}
.fav{position:absolute;right:8px;top:8px;z-index:2;width:38px;height:38px;border-radius:50%;border:0;background:rgba(255,255,255,.92);display:grid;place-items:center;transition:transform .15s}
.fav:hover{transform:scale(1.08)}.fav svg{width:19px;height:19px;stroke:var(--ink);fill:none;stroke-width:1.6}.fav[aria-pressed=true] svg{fill:var(--accent);stroke:var(--accent)}
.card .nm{margin-top:13px;font-size:1rem;line-height:1.3}.card .row{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:4px}
.card .pr{font-weight:600}.card .md{color:var(--mute);font-size:.84rem;margin-top:2px}
.dots{display:flex;gap:4px;align-items:center}.dots i{width:11px;height:11px;border-radius:50%;border:1px solid rgba(16,51,58,.22)}
.rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(200px,22.5%);gap:clamp(10px,1.4vw,20px);overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:12px;scrollbar-width:thin}.rail .card{scroll-snap-align:start}

/* ---------- Catálogo ---------- */
.crumb{font-size:.88rem;color:var(--mute);padding-top:24px}.crumb a{text-decoration:none}.crumb a:hover{text-decoration:underline}
.lh{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap;margin:12px 0 20px}.lh h1{font-size:clamp(2.2rem,4.8vw,3.8rem)}.lh span{color:var(--mute)}
.fbar{position:sticky;top:70px;z-index:20;background:rgba(238,242,240,.95);backdrop-filter:blur(12px);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 0;margin-bottom:30px}
.fbar .in{display:flex;gap:10px;align-items:center;overflow-x:auto;scrollbar-width:none}.fbar .in::-webkit-scrollbar{display:none}
.fbar select,.chip{border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:9px 16px;font-size:.93rem;white-space:nowrap;flex:none}
.chip[aria-pressed=true]{background:var(--sea);color:#fff;border-color:var(--sea)}
.cdots{display:flex;gap:7px;flex:none;padding:2px 6px 2px 2px}.cdots button{width:28px;height:28px;border-radius:50%;border:1px solid rgba(16,51,58,.25);padding:0}
.cdots button[aria-pressed=true]{outline:2px solid var(--ink);outline-offset:2px}
.more{text-align:center;margin:44px 0 0}.empty{padding:80px 0;text-align:center;color:var(--mute)}.empty h1{color:var(--ink);font-size:clamp(2rem,4vw,2.8rem);margin-bottom:12px}.empty p{max-width:52ch;margin-inline:auto}.empty .btn{margin-top:14px}

/* ---------- Ficha de vestido ---------- */
.pd{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(24px,4vw,68px);padding:18px 0 var(--gap);align-items:start}
.gal{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.gal button{border:0;padding:0;background:var(--line);aspect-ratio:2/3;overflow:hidden;border-radius:var(--r);cursor:zoom-in}
.gal img{width:100%;height:100%;object-fit:cover;object-position:50% 8%}.gal button:first-child:nth-last-child(odd){grid-column:1/-1;aspect-ratio:4/5}
.info{position:sticky;top:96px}.info h1{font-size:clamp(1.9rem,2.8vw,2.6rem)}.info .md{color:var(--mute);font-size:.94rem;margin-top:8px}
.info .price{font-size:1.55rem;font-weight:600;margin-top:18px}.info .iva{font-size:.88rem;color:var(--mute)}
.opt{margin-top:26px}.opt .oh{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px;font-size:.96rem}.opt .oh b{font-weight:600}.opt .oh span{color:var(--mute)}
.oh button{border:0;background:none;padding:0;text-decoration:underline;text-underline-offset:4px;font-size:.92rem}
.sw{display:flex;gap:8px;flex-wrap:wrap}.sw button{width:56px;height:76px;padding:0;border:1px solid var(--line);background:var(--paper);border-radius:8px;overflow:hidden;position:relative;font-size:.62rem;line-height:1.1}
.sw img{width:100%;height:100%;object-fit:cover;object-position:50% 18%}.sw button[aria-pressed=true]{outline:2px solid var(--ink);outline-offset:2px}
.sw button[disabled]{opacity:.38;cursor:not-allowed}.sw button[disabled]::after{content:"";position:absolute;inset:0;background:linear-gradient(to top right,transparent 48.5%,var(--ink) 49.5%,var(--ink) 50.5%,transparent 51.5%)}
.sz{display:grid;grid-template-columns:repeat(auto-fill,minmax(66px,1fr));gap:8px}.sz button{border:1px solid var(--line);background:var(--paper);border-radius:10px;padding:10px 4px 7px;display:grid;gap:1px;justify-items:center;transition:border-color .15s}
.sz button:not([disabled]):hover{border-color:var(--ink)}.sz b{font-weight:500;font-size:1.02rem}.sz small{font-size:.7rem;color:var(--accent);min-height:1em;line-height:1}
.sz button[aria-pressed=true]{background:var(--sea);color:#fff;border-color:var(--sea)}.sz button[aria-pressed=true] small{color:#F0C9BD}
.sz button[disabled]{opacity:.38;cursor:not-allowed;text-decoration:line-through}
.buy{display:grid;gap:10px;margin-top:24px}.buy .two{display:grid;grid-template-columns:1fr auto;gap:10px}.buy .fav{position:static;width:54px;height:54px;border:1.5px solid var(--line);background:var(--paper)}
.left{color:var(--accent);font-size:.94rem;margin-top:12px;font-weight:500}
.acc-l{margin-top:26px;border-top:1px solid var(--line)}.acc-l details{border-bottom:1px solid var(--line)}.acc-l summary{list-style:none;cursor:pointer;padding:16px 0;display:flex;justify-content:space-between;font-weight:500}
.acc-l summary::-webkit-details-marker{display:none}.acc-l summary::after{content:"+";font-size:1.3rem;line-height:1;color:var(--mute)}.acc-l details[open] summary::after{content:"–"}
.acc-l .bd{padding:0 0 18px;color:var(--mute);font-size:.96rem}.acc-l ul{margin:0;padding-left:18px}.acc-l li{margin-bottom:4px}
.stick{display:none}
.zoom{position:fixed;inset:0;z-index:70;background:rgba(6,20,23,.94);display:grid;place-items:center;cursor:zoom-out}.zoom img{max-width:96vw;max-height:96vh;object-fit:contain}

/* ---------- Bolsa, formularios y seguimiento ---------- */
.bag{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(24px,4vw,64px);padding:26px 0 var(--gap);align-items:start}.bag h1{font-size:clamp(2.2rem,4vw,3.2rem);margin-bottom:12px}
.bl{display:grid;grid-template-columns:92px 1fr auto;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}.bl img{aspect-ratio:2/3;object-fit:cover;border-radius:8px;background:var(--line);width:100%}
.bl small{color:var(--mute);display:block}.bl button{border:0;background:none;color:var(--mute);text-decoration:underline;font-size:.88rem;padding:6px 0}
.box{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:clamp(20px,2.4vw,30px);color:var(--ink)}.box h2{font-size:1.6rem;margin-bottom:16px}
.fld{display:grid;gap:6px;margin-bottom:14px;font-size:.92rem}.fld input,.fld select,.fld textarea{padding:13px 14px;border:1px solid var(--line);border-radius:10px;background:var(--bg);width:100%;font-size:1rem}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:2px solid var(--sea);outline-offset:0;background:#fff}.fld.two{grid-template-columns:1fr 1fr;gap:12px}.fld.two>div{display:grid;gap:6px}
.opts label{display:flex;gap:10px;align-items:center;font-size:.98rem;padding:12px 14px;border:1px solid var(--line);border-radius:10px;margin-bottom:8px;cursor:pointer}.opts input{accent-color:var(--accent);width:18px;height:18px}
.tot{display:flex;justify-content:space-between;padding:5px 0}.tot.big{font-size:1.22rem;font-weight:600;border-top:1px solid var(--line);margin-top:8px;padding-top:14px}
.msg{padding:12px 14px;border-radius:10px;font-size:.94rem;margin:12px 0;background:#FBEDEA;border:1px solid #E7B9B1;color:#6E1215}.msg.ok{background:#E6F2EC;border-color:#B5D6C5;color:var(--ok)}
.fine-p{font-size:.86rem;color:var(--mute);margin:14px 0 0}
.track{max-width:760px;padding:10px 0 var(--gap)}.track h1{font-size:clamp(2.1rem,4vw,3.2rem);margin:8px 0 10px}
.tl{list-style:none;margin:30px 0;padding:0}.tl li{position:relative;padding:0 0 26px 40px;color:var(--mute)}.tl li::before{content:"";position:absolute;left:8px;top:6px;width:13px;height:13px;border-radius:50%;border:2px solid var(--line);background:var(--bg)}
.tl li::after{content:"";position:absolute;left:14px;top:24px;bottom:0;width:1.5px;background:var(--line)}.tl li:last-child::after{display:none}
.tl li.done{color:var(--ink)}.tl li.done::before{background:var(--ok);border-color:var(--ok)}.tl li.done::after{background:var(--ok)}.tl li.now{color:var(--ink);font-weight:600}.tl li.now::before{border-color:var(--accent);background:var(--accent);box-shadow:0 0 0 5px rgba(155,27,30,.14)}
.tl small{display:block;font-weight:400;color:var(--mute)}
.prose{max-width:760px;padding:10px 0 var(--gap)}.prose h1{font-size:clamp(2.1rem,4vw,3.2rem);margin:8px 0 22px}.prose h2,.prose h3{font-size:1.5rem;margin:30px 0 8px}
.prose table{border-collapse:collapse;display:block;overflow-x:auto;font-size:.9rem;background:var(--paper);border-radius:10px}.prose th,.prose td{border:1px solid var(--line);padding:8px 11px;text-align:center;white-space:nowrap}
.sk{background:var(--line)}
dialog{border:0;border-radius:var(--r);padding:0;max-width:min(520px,94vw);width:100%;color:var(--ink);background:var(--paper)}dialog::backdrop{background:rgba(6,20,23,.55)}
.dl{padding:clamp(22px,3vw,32px);position:relative}.dl h2{font-size:1.7rem;margin-bottom:8px;padding-right:36px}.dl>p{color:var(--mute)}.dl .x{position:absolute;right:14px;top:14px;border:0;background:var(--bg);width:36px;height:36px;border-radius:50%;font-size:1.2rem;line-height:1}
.res{background:var(--sand);border-radius:10px;padding:16px;margin-top:6px;font-size:1.02rem}.res b{font-family:var(--disp);font-weight:400;font-size:1.8rem;display:block}

/* ---------- Pie y flotantes ---------- */
footer{background:var(--sea);color:#B9CBC8;padding:clamp(48px,6vw,80px) 0 28px;font-size:.95rem}footer .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:36px}
footer h4{color:#fff;font-size:.98rem;margin:0 0 12px;font-weight:600}footer a{display:block;padding:4px 0;text-decoration:none}footer a:hover{color:#fff}footer .brand{color:#fff;display:inline-block;margin-bottom:14px;font-size:1.8rem}
footer p{max-width:34ch}.soc{display:flex;gap:10px;margin-top:6px}.soc a{width:40px;height:40px;border-radius:50%;border:1px solid #37575D;display:grid;place-items:center;padding:0}.soc a:hover{background:#fff;color:var(--sea)}.soc svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.6}
.fine{border-top:1px solid #2B4B51;margin-top:40px;padding-top:20px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:.86rem}.fine a{padding:0}
.wa{position:fixed;right:16px;bottom:16px;z-index:40;background:#1F8F55;color:#fff;border-radius:999px;padding:13px 18px;text-decoration:none;font-size:.94rem;box-shadow:0 8px 24px rgba(0,0,0,.22);display:flex;gap:8px;align-items:center}.wa[hidden]{display:none}.wa svg{width:20px;height:20px;fill:#fff}

/* ---------- Celular ---------- */
@media(max-width:1000px){.grid{grid-template-columns:repeat(3,1fr)}.hd{grid-template-columns:auto 1fr;height:auto;padding-top:10px;row-gap:2px}.tools{justify-self:end}
  nav.main{grid-column:1/-1;grid-row:2;justify-content:flex-start;margin:0 calc(-1*var(--pad));padding:0 var(--pad) 6px}.fbar{top:104px}
  .hero,.pd,.bag,.visit,.story,.ig,.cita .in{grid-template-columns:1fr}.hero{padding-top:22px}.hero .arches{max-width:560px;width:100%;margin:6px auto 0}.info{position:static}.story .arch{max-width:260px}
  .occ{grid-template-columns:repeat(5,clamp(150px,29vw,240px));overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-right:calc(-1*var(--pad));padding-right:var(--pad)}.occ a{scroll-snap-align:start}
  .facts-row{grid-template-columns:1fr 1fr}.facts-row div:nth-child(3){border-left:0}.facts-row div:nth-child(n+3){border-top:1px solid var(--line)}
  .how{grid-template-columns:1fr 1fr;row-gap:34px}.how::before{display:none}.rev{grid-template-columns:1fr}footer .cols{grid-template-columns:1fr 1fr}.rail{grid-auto-columns:44%}
  .gal{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 calc(-1*var(--pad));padding:0 var(--pad);scrollbar-width:none}.gal button,.gal button:first-child:nth-last-child(odd){flex:0 0 84%;aspect-ratio:2/3;scroll-snap-align:center}
  .stick{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:45;background:var(--paper);border-top:1px solid var(--line);padding:10px 14px calc(10px + env(safe-area-inset-bottom));gap:14px;align-items:center}.stick .btn{flex:1;padding:14px}.stick b{white-space:nowrap;font-size:1.05rem}
  body.has-stick .wa{bottom:86px}body.has-stick footer{padding-bottom:100px}}
@media(max-width:640px){.grid{grid-template-columns:repeat(2,1fr)}.wa span{display:none}.wa{padding:14px}.card .nm{font-size:.94rem}.brand{font-size:1.35rem}.top span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .occ{grid-template-columns:repeat(5,42vw)}.occ b{font-size:1.2rem}.facts-row div{padding:14px;font-size:.88rem}.fld.two{grid-template-columns:1fr}footer .cols{grid-template-columns:1fr}.hero .cta .btn{flex:1}.ig iframe{height:420px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

/* Ajustes tras la revisión en pantalla */
main{min-height:62vh}
.cita .box h2{color:var(--ink);font-size:1.5rem;margin-bottom:14px}
.sw button i{display:block;height:46px}.sw button span{display:grid;place-items:center;height:28px;padding:0 3px;text-align:center}
.nophoto{font-size:.86rem;color:var(--mute);margin:10px 0 0}

/* ================= Versión visual: portada oscura con arcada, secciones de color por ocasión ================= */
.hero2{background:var(--sea);color:#fff;padding:clamp(28px,4vw,56px) 0 0;position:relative;margin-bottom:60px}
.hero2 .ht{display:grid;grid-template-columns:1.25fr 1fr;gap:clamp(20px,4vw,72px);align-items:end;margin-bottom:clamp(26px,3.6vw,48px)}
.hero2 h1{font-size:clamp(2.5rem,5.4vw,4.9rem);line-height:1}.hero2 .lead{color:#C9DAD7;font-size:1.1rem;margin:0 0 22px;max-width:46ch}
.hero2 .cta{display:flex;gap:12px;flex-wrap:wrap}.btn.line{background:none;border-color:rgba(255,255,255,.55);color:#fff}.btn.line:hover{background:#fff;border-color:#fff;color:var(--sea)}
/* Arcada: una foto en arco por ocasión, a todo lo ancho, con alturas alternadas */
.arcade{display:grid;grid-template-columns:repeat(5,1fr);gap:clamp(8px,1.2vw,18px);align-items:end}
.arcade .arch{aspect-ratio:1/1.75;text-decoration:none;color:#fff;box-shadow:0 0 0 1px rgba(217,183,126,.5),0 0 0 7px var(--sea),0 0 0 8px rgba(217,183,126,.28)}
.arcade .arch:nth-child(even){aspect-ratio:1/1.52}.arcade .arch:nth-child(3){aspect-ratio:1/1.92}
.arcade img{width:100%;height:100%;object-fit:cover;object-position:50% 12%;transition:transform .6s cubic-bezier(.2,.7,.2,1)}.arcade .arch:hover img{transform:scale(1.045)}
.arcade .lab{position:absolute;left:0;right:0;bottom:0;padding:70px 14px 18px;text-align:center;background:linear-gradient(to top,rgba(8,34,39,.88),rgba(8,34,39,0))}
.arcade .lab b{display:block;font-family:var(--disp);font-weight:400;font-size:clamp(1.15rem,1.9vw,1.75rem);line-height:1.1}.arcade .lab small{font-size:.84rem;color:#D5E3E0}
.arcade .arch{animation:rise .8s cubic-bezier(.2,.7,.2,1) both}.arcade .arch:nth-child(2){animation-delay:.06s}.arcade .arch:nth-child(3){animation-delay:.12s}.arcade .arch:nth-child(4){animation-delay:.18s}.arcade .arch:nth-child(5){animation-delay:.24s}
.hero2 .facts-row{color:var(--ink);position:relative;top:36px;margin-top:-6px;box-shadow:0 14px 40px rgba(14,58,66,.12)}
/* Secciones de ocasión */
.feat{padding:var(--gap) 0}.feat.blush{background:var(--blush)}.feat.mist{background:var(--mist)}.feat.sand{background:var(--sand)}
.feat .in{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,84px);align-items:center}.feat.flip .big{order:2}
.feat .big{aspect-ratio:4/5;box-shadow:0 0 0 1px rgba(14,58,66,.25),0 0 0 9px transparent,0 0 0 10px rgba(14,58,66,.18)}.feat .big img{width:100%;height:100%;object-fit:cover;object-position:50% 10%;transition:transform .6s cubic-bezier(.2,.7,.2,1)}.feat .big:hover img{transform:scale(1.035)}
.feat h2{font-size:clamp(2.2rem,4.6vw,4rem)}.feat .tx>p{font-size:1.1rem;max-width:42ch;margin:16px 0 24px;color:#2F4F55}
.feat .duo{display:grid;grid-template-columns:1fr 1fr;gap:clamp(10px,1.4vw,20px);margin-top:clamp(26px,3.4vw,44px);max-width:520px}
/* Círculos de color */
.hues{display:flex;gap:clamp(14px,2.6vw,36px);flex-wrap:wrap}.hues a{text-decoration:none;text-align:center;font-size:.94rem;display:grid;gap:10px;justify-items:center;width:clamp(76px,8vw,104px)}
.hues i{display:block;width:100%;aspect-ratio:1;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(14,58,66,.16),0 0 0 5px var(--paper),0 0 0 6px var(--line);transition:transform .2s}.hues a:hover i{transform:scale(1.07)}
/* Encabezado de cada lista */
.lhd{padding:0 0 clamp(22px,3vw,36px)}.lhd.blush{background:var(--blush)}.lhd.mist{background:var(--mist)}.lhd.sand{background:var(--sand)}
.lhd .in{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end}.lhd h1{font-size:clamp(2.4rem,5.4vw,4.6rem);margin:14px 0 8px}.lhd p{margin:0 0 4px;font-size:1.08rem;color:#2F4F55}.lhd #cnt{color:var(--mute)}
.lhd .trio{display:flex;gap:12px;align-items:end;padding-top:22px}.lhd .trio .arch{width:clamp(96px,10.5vw,150px);aspect-ratio:1/1.55}.lhd .trio .arch:nth-child(2){aspect-ratio:1/1.8}.lhd .trio img{width:100%;height:100%;object-fit:cover;object-position:50% 12%}
.lhd .crumb{color:#2F4F55}
/* Tarjetas: la foto se acerca un poco al pasar el cursor */
.card .im img{transition:transform .6s cubic-bezier(.2,.7,.2,1),opacity .3s}@media(hover:hover){.card:hover .im img{transform:scale(1.03)}}
.revcta{margin:26px 0 0;display:flex;gap:14px;align-items:center;flex-wrap:wrap;color:var(--mute)}
@media(max-width:1000px){.hero2 .ht{grid-template-columns:1fr;gap:16px}.feat .in{grid-template-columns:1fr}.feat.flip .big{order:0}.feat .big{max-width:520px;width:100%;justify-self:center}.lhd .trio{display:none}.lhd .in{grid-template-columns:1fr}
  .arcade{grid-template-columns:repeat(5,minmax(150px,30vw));overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-right:calc(-1*var(--pad));padding:9px var(--pad) 9px 9px;margin-left:-9px}.arcade::-webkit-scrollbar{display:none}.arcade .arch{scroll-snap-align:start}}
@media(max-width:640px){.arcade{grid-template-columns:repeat(5,44vw)}.hero2 .cta .btn{flex:1}.hero2{margin-bottom:84px}.feat .duo{max-width:none}.hues a{width:21%}.hues{gap:14px 5%}}
/* Celular: titular corto, enseguida las fotos, y después el texto con los botones */
@media(max-width:640px){.hero2 .wrap{display:flex;flex-direction:column}.hero2 .ht{display:contents}.hero2 h1{font-size:2.05rem;margin-bottom:18px}
  .hero2 .arcade{order:2}.hero2 .ht>div{order:3;margin-top:22px}.hero2 .facts-row{order:4}.hero2 .lead{font-size:1rem;margin-bottom:16px}.hero2{padding-top:20px}}
