@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,600;0,700;1,600&display=swap');
:root{--ink:#29231d;--paper:#fffdfa;--cream:#f8f3eb;--pink:#e93b81;--gold:#c89136;--green:#3d663b;--line:rgba(58,42,24,.12);--shadow:0 18px 48px rgba(69,45,18,.10)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;line-height:1.55}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.site-header{position:sticky;top:0;z-index:20;height:76px;padding:0 clamp(20px,5vw,74px);display:flex;align-items:center;justify-content:space-between;gap:28px;background:rgba(255,253,250,.9);backdrop-filter:blur(16px);border-bottom:1px solid rgba(70,47,25,.07)}
.brand-lockup{display:flex;align-items:center;gap:9px;min-width:0}.brand-lockup img{width:46px;height:46px;object-fit:cover;border-radius:11px}.wordmark{font-family:'Playfair Display',serif;font-size:1.35rem;font-weight:700;letter-spacing:-.06em;color:#40291c;white-space:nowrap}.wordmark i{font-style:italic}
.wordmark span{font-style:italic}
.wordmark sup{font:600 .5rem 'DM Sans';letter-spacing:0;vertical-align:top;margin-left:3px}
.site-header nav{display:flex;align-items:center;gap:clamp(16px,2.25vw,34px);font-size:.84rem;font-weight:700;color:#625749}
.site-header nav a{position:relative}
.site-header nav a:after{content:'';position:absolute;left:0;right:0;bottom:-7px;height:1px;background:var(--pink);transform:scaleX(0);transition:transform .25s}
.site-header nav a:hover:after{transform:scaleX(1)}
.menu-toggle{display:none;border:0;background:none;font:700 .78rem 'DM Sans';color:var(--ink)}
main{overflow:hidden}
.hero-official{position:relative;min-height:min(760px,calc(100vh - 76px));display:grid;place-items:end center;background:#6da9dc}
.hero-official>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}
.hero-official:after{content:'';position:absolute;inset:auto 0 0;height:28%;background:linear-gradient(transparent,rgba(31,20,12,.34));pointer-events:none}
.hero-cta{position:relative;z-index:2;margin:0 0 clamp(34px,6vw,80px);background:#38220f;color:#fff4cf;border:1px solid rgba(255,218,146,.72);border-radius:999px;padding:15px 25px;font-weight:700;box-shadow:0 12px 25px rgba(0,0,0,.25);transition:transform .25s,box-shadow .25s}
.hero-cta:hover{transform:translateY(-3px);box-shadow:0 16px 28px rgba(0,0,0,.3)}
.section{padding:clamp(72px,11vw,142px) clamp(20px,7vw,120px)}
.intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.72fr);gap:clamp(36px,10vw,130px);align-items:end;max-width:1250px;margin:auto}
.eyebrow{color:var(--pink);font-size:.73rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;margin:0 0 17px}
.intro h1,.intro h2,.section-heading h2,.discover-copy h2,.profile-copy h1{font:600 clamp(2.4rem,5vw,5.4rem)/.98 'Playfair Display',serif;letter-spacing:-.06em;margin:0}
.intro h1 em,.intro h2 em{color:#9b5f2e}
.intro p:not(.eyebrow),.discover-copy p{font-size:1.08rem;color:#62594e;max-width:560px;margin:24px 0 0}
.quote-block{padding:29px 0 0;border-top:1px solid var(--line);font:italic 1.26rem/1.4 'Playfair Display',serif;color:#725d4b}
.world-strip{background:var(--cream);padding:clamp(50px,8vw,100px) clamp(20px,7vw,120px)}
.world-strip-inner{max-width:1250px;margin:auto;display:grid;grid-template-columns:.75fr 1.25fr;gap:45px;align-items:center}
.world-strip img{width:100%;border-radius:24px;box-shadow:var(--shadow)}
.world-strip h2{font:600 clamp(2rem,3.8vw,4rem)/1.04 'Playfair Display',serif;letter-spacing:-.05em;margin:0}
.world-strip p{color:#62594e;font-size:1.05rem}
.section-heading{max-width:1250px;margin:0 auto 42px}
.character-grid{max-width:1250px;margin:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.character-card{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 1px 0 rgba(0,0,0,.02);transition:transform .35s ease,box-shadow .35s ease}
.character-card:hover{transform:translateY(-8px);box-shadow:var(--shadow)}
.character-card figure{margin:0;background:linear-gradient(145deg,#fbfaf7,#f2ece2);aspect-ratio:1/1;overflow:hidden;display:grid;place-items:center}
.character-card figure img{height:100%;width:100%;object-fit:contain;mix-blend-mode:multiply;transition:transform .6s ease}
.character-card:hover figure img{transform:scale(1.055)}
.character-card div{padding:18px 19px 20px}
.character-card p{margin:0;color:#9b8b78;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700}
.character-card h3{font:600 1.6rem 'Playfair Display',serif;letter-spacing:-.04em;margin:5px 0 8px}
.character-card span{font-size:.82rem;font-weight:700;color:var(--pink)}
.character-card b{font-size:1rem;margin-left:4px}
.collection-section{padding:clamp(60px,10vw,130px) clamp(20px,7vw,120px);background:linear-gradient(#fffdfa,#f9f1e9)}
.collection-card{position:relative;max-width:1250px;margin:auto;overflow:hidden;border-radius:30px;box-shadow:var(--shadow);background:#d6755c}
.collection-card img{width:100%;min-height:300px;object-fit:cover}
.collection-card a{position:absolute;left:50%;bottom:clamp(24px,5vw,62px);transform:translateX(-50%);padding:14px 24px;border-radius:999px;background:#fff;color:#5b2d45;font-weight:700;box-shadow:0 6px 20px rgba(40,12,15,.2);white-space:nowrap;transition:transform .25s}
.collection-card a:hover{transform:translateX(-50%) translateY(-3px)}
.discover{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;min-height:550px;background:#271c21}
.discover img{width:100%;height:100%;object-fit:cover;opacity:.95}
.discover-copy{padding:clamp(50px,8vw,110px);display:flex;flex-direction:column;justify-content:center;color:#fff7ee}
.discover-copy .eyebrow{color:#f6bbcf}
.discover-copy p{color:#f1dfe1}
.text-link{display:inline-flex;align-items:center;gap:8px;margin-top:28px;color:#ffd9ae;font-size:.9rem;font-weight:700}
.text-link:hover{gap:13px}
.site-footer{position:relative;padding:64px clamp(20px,7vw,120px) 30px;background:#2c201c;color:#faefe7;display:grid;grid-template-columns:1fr auto;gap:35px}
.footer-logo{display:block;width:115px;overflow:hidden;border-radius:13px}.footer-logo img{width:100%;height:auto}.site-footer .wordmark{color:#fff5e8}
.site-footer p{color:#cdb9aa;font-size:.9rem}
.footer-links{display:flex;flex-wrap:wrap;justify-content:flex-end;align-content:start;gap:14px 25px;font-size:.85rem;font-weight:700}
.site-footer small{grid-column:1/-1;padding-top:25px;border-top:1px solid rgba(255,255,255,.13);color:#bba99b}
.amazon-float{position:fixed;right:20px;bottom:20px;z-index:30;padding:13px 17px;border-radius:999px;background:#2c201c;color:#fffaf4;font-size:.82rem;font-weight:700;box-shadow:0 10px 30px rgba(37,20,10,.25);transition:transform .25s}
.amazon-float:hover{transform:translateY(-3px)}
.page-hero{padding:clamp(78px,11vw,140px) clamp(20px,7vw,120px) 65px;background:linear-gradient(130deg,#fff8f5,#f5eadf)}
.page-hero>div{max-width:850px;margin:auto}
.page-hero h1{font:600 clamp(3rem,7vw,6.1rem)/.98 'Playfair Display',serif;letter-spacing:-.07em;margin:0}
.page-hero p{color:#685d52;max-width:610px;font-size:1.08rem}
.profile-intro{position:relative;min-height:590px;padding:clamp(30px,7vw,100px);background:linear-gradient(135deg,#fff9f3,#f2ece4);display:grid;grid-template-columns:1fr minmax(300px,.9fr);align-items:center;overflow:hidden}
.back-link{position:absolute;top:32px;left:clamp(20px,7vw,100px);font-size:.8rem;font-weight:700;color:#665648}
.profile-copy{max-width:540px;z-index:1}
.profile-copy p:last-child{color:#65594e;font-size:1.1rem}
.profile-portrait{margin:0;height:100%;align-self:end;display:flex;justify-content:center}
.profile-portrait img{height:min(570px,63vw);max-width:100%;object-fit:contain;mix-blend-mode:multiply}
.bio-section,.related-section{padding:clamp(70px,9vw,120px) clamp(20px,7vw,120px)}
.bio-section{background:#fcf8f3}
.bio-sheet{max-width:1180px;margin:auto;border-radius:18px;box-shadow:0 20px 55px rgba(52,32,15,.13);border:1px solid var(--line)}
.bio-pending{max-width:760px;margin:auto;padding:40px;border:1px solid var(--line);border-radius:18px;color:#6c5e51;background:#fff;text-align:center}
.related-section{padding-bottom:145px}
.character-grid.compact{grid-template-columns:repeat(4,1fr)}
.reveal{opacity:0;transform:translateY(16px);transition:opacity .6s ease var(--delay,0ms),transform .6s ease var(--delay,0ms)}
.reveal.is-visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}
.reveal{opacity:1;transform:none}
}
@media (max-width:800px){.site-header{height:66px;padding:0 20px}
.site-header nav{display:none;position:absolute;top:65px;left:0;right:0;padding:18px 20px 24px;background:#fffdfa;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:17px}
.site-header nav.is-open{display:flex}
.menu-toggle{display:block}
.hero-official{min-height:calc(62vh - 66px)}
.hero-official>img{object-position:center}
.intro,.world-strip-inner,.discover{grid-template-columns:1fr}
.intro{gap:28px}
.world-strip{padding-top:55px}
.world-strip-inner{gap:30px}
.character-grid,.character-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.character-card h3{font-size:1.3rem}
.character-card div{padding:15px}
.collection-card{border-radius:20px}
.collection-card img{min-height:240px;object-position:center}
.discover{min-height:0}
.discover img{height:300px}
.discover-copy{padding:66px 27px}
.site-footer{grid-template-columns:1fr;padding:50px 25px 25px}
.footer-links{justify-content:flex-start}
.profile-intro{min-height:0;padding-top:105px;grid-template-columns:1fr}
.profile-portrait{height:380px;margin-top:22px}
.profile-portrait img{height:390px}
.bio-section,.related-section{padding-left:20px;padding-right:20px}
.amazon-float{right:14px;bottom:14px;font-size:.76rem}
.page-hero{padding:75px 25px 55px}
}
@media (max-width:380px){.character-grid,.character-grid.compact{grid-template-columns:1fr}
.hero-official{min-height:54vh}
}

/* Accesibilidad y estabilidad visual */
a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:3px solid #d92b72;outline-offset:3px;border-radius:4px}
img{height:auto}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* Renovación visual Villa Bii · agosto 2026 */
:root{
  --ink:#1d2630;
  --paper:#f3efe7;
  --cream:#e9e7df;
  --pink:#f05a91;
  --gold:#d6aa61;
  --green:#507763;
  --night:#0c1929;
  --night-soft:#132739;
  --forest:#16302f;
  --line:rgba(35,44,52,.14);
  --shadow:0 24px 70px rgba(7,17,29,.16);
}

body{background:var(--paper);color:var(--ink)}

.site-header{
  height:72px;
  color:#f8f3e9;
  background:rgba(9,22,37,.94);
  border-bottom:1px solid rgba(214,170,97,.18);
  box-shadow:0 8px 28px rgba(5,12,22,.12);
}
.brand-lockup img{border-radius:10px;box-shadow:0 0 0 1px rgba(255,255,255,.14)}
.site-header .wordmark{color:#f8f1e4;letter-spacing:-.045em}
.site-header nav{color:#dfe5e6}
.site-header nav a{padding:10px 0;transition:color .2s ease}
.site-header nav a:hover,.site-header nav a[aria-current="page"]{color:#fff4d7}
.site-header nav a:after{bottom:3px;background:linear-gradient(90deg,var(--pink),var(--gold))}
.site-header nav a[aria-current="page"]:after{transform:scaleX(1)}

.hero-official{background:#15314a}
.hero-official:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(6,18,29,.02) 55%,rgba(6,17,28,.52));pointer-events:none}
.hero-official:after{z-index:1;height:36%;background:linear-gradient(transparent,rgba(6,17,28,.58))}
.hero-cta{z-index:2;background:rgba(11,28,43,.9);color:#fff1ce;border-color:rgba(220,176,99,.78);box-shadow:0 14px 34px rgba(5,13,22,.38)}

.hero-official + .section{
  position:relative;
  color:#f5f1e8;
  background:
    radial-gradient(circle at 82% 18%,rgba(240,90,145,.10),transparent 28%),
    radial-gradient(circle at 14% 90%,rgba(92,143,136,.16),transparent 32%),
    linear-gradient(135deg,#0b1726,#122c3b 72%,#182d33);
}
.hero-official + .section:after{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(90deg,transparent,#000 30%,#000 70%,transparent)}
.hero-official + .section .intro{position:relative;z-index:1}
.hero-official + .section .intro h1,.hero-official + .section .intro h2{color:#fbf7ee}
.hero-official + .section .intro h1 em,.hero-official + .section .intro h2 em{color:#e4bc7a}
.hero-official + .section .intro p:not(.eyebrow){color:#c8d2d3}
.hero-official + .section .quote-block{color:#e7d8c2;border-color:rgba(255,255,255,.16)}

.world-strip{
  color:#f4f1e8;
  background:
    radial-gradient(circle at 15% 10%,rgba(99,151,142,.18),transparent 34%),
    linear-gradient(135deg,#102726,#132b34 56%,#121d2d);
}
.world-strip img{box-shadow:0 26px 70px rgba(3,11,18,.34);border:1px solid rgba(255,255,255,.10)}
.world-strip h2{color:#fff9ed}
.world-strip p{color:#c7d1cf}
.world-strip .text-link{color:#f2ca89}

.section-heading .eyebrow,.page-hero .eyebrow{color:#d6aa61}
#habitantes{
  position:relative;
  background:
    radial-gradient(circle at 12% 8%,rgba(94,152,143,.16),transparent 27%),
    radial-gradient(circle at 88% 42%,rgba(213,151,190,.12),transparent 30%),
    linear-gradient(180deg,#112c35 0%,#101f2d 54%,#0b1725 100%);
  color:#f5f1e8;
}
#habitantes .section-heading h2{color:#fff8ed}

.character-grid{gap:20px}
.character-card{
  position:relative;
  color:#f5f1e8;
  background:#101f2d;
  border:1px solid rgba(255,255,255,.09);
  border-radius:22px;
  box-shadow:0 18px 42px rgba(9,18,29,.12);
}
.character-card:after{content:"";position:absolute;left:18px;right:18px;bottom:0;height:2px;background:linear-gradient(90deg,transparent,var(--card-accent,#d6aa61),transparent);opacity:.75}
.character-card:nth-child(4n+1){--card-accent:#d6aa61}
.character-card:nth-child(4n+2){--card-accent:#f05a91}
.character-card:nth-child(4n+3){--card-accent:#a990d8}
.character-card:nth-child(4n+4){--card-accent:#72a692}
.character-card figure{
  position:relative;
  background:
    radial-gradient(circle at 50% 42%,color-mix(in srgb,var(--card-accent) 28%,transparent),transparent 46%),
    linear-gradient(155deg,#22384a,#0b1725 72%);
}
.character-card figure:after{content:"";position:absolute;inset:auto 12% 8%;height:20%;border-radius:50%;background:radial-gradient(ellipse,rgba(0,0,0,.4),transparent 68%);filter:blur(7px);pointer-events:none}
.character-card figure img{position:relative;z-index:1;mix-blend-mode:normal;filter:drop-shadow(0 18px 18px rgba(0,0,0,.28))}
.character-card div{background:linear-gradient(180deg,rgba(16,31,45,.88),#0d1a27)}
.character-card p{color:#97a8b2}
.character-card h3{color:#fff7e9}
.character-card span{color:var(--card-accent)}
.character-card:hover{box-shadow:0 26px 60px rgba(7,16,26,.25)}

.collection-section{background:linear-gradient(145deg,#091727,#132637 62%,#182e32)}
.collection-card{border:1px solid rgba(255,255,255,.12);box-shadow:0 28px 80px rgba(2,10,18,.38)}
.collection-card a{background:#fff5df;color:#172638;border:1px solid rgba(214,170,97,.62)}
.discover{background:linear-gradient(135deg,#1a1727,#222135 48%,#172e32)}
.discover img{filter:saturate(.9) contrast(1.04)}
.discover-copy .eyebrow{color:#e9b3c7}
.discover-copy p{color:#d9d5d8}

.page-hero{
  position:relative;
  color:#f8f3e9;
  background:
    radial-gradient(circle at 82% 30%,rgba(240,90,145,.12),transparent 28%),
    radial-gradient(circle at 12% 85%,rgba(81,130,119,.20),transparent 34%),
    linear-gradient(135deg,#0b1727,#11283b 58%,#18302f);
  border-bottom:1px solid rgba(214,170,97,.18);
}
.page-hero:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 0 48%,rgba(255,255,255,.022) 48% 49%,transparent 49% 100%);background-size:54px 54px;opacity:.7}
.page-hero>div{position:relative;z-index:1}
.page-hero h1{color:#fff9ef;text-wrap:balance}
.page-hero p{color:#c9d3d5}
.page-hero a{color:#f2ca89}

.profile-intro{
  color:#f6f1e8;
  background:
    radial-gradient(circle at 78% 46%,rgba(214,170,97,.14),transparent 30%),
    linear-gradient(135deg,#0b1828,#132b3a 58%,#182f31);
}
.profile-copy h1{color:#fff8ec}
.profile-copy p:last-child{color:#cbd4d4}
.profile-portrait img{mix-blend-mode:normal;filter:drop-shadow(0 24px 28px rgba(0,0,0,.34))}
.back-link{color:#e2c28d}
.bio-section{background:#f1ede5}

.site-footer{background:linear-gradient(135deg,#081522,#152633);border-top:1px solid rgba(214,170,97,.18)}
.site-footer p{color:#b9c4c8}
.site-footer small{color:#9faeb4}
.footer-links a:hover{color:#f2ca89}
.amazon-float{background:#0b1a28;color:#fff3d8;border:1px solid rgba(214,170,97,.58);box-shadow:0 12px 34px rgba(3,11,18,.30)}

@media (max-width:800px){
  .site-header{
    height:auto;
    min-height:116px;
    padding:9px 14px 10px;
    display:grid;
    grid-template-columns:1fr;
    gap:7px;
    align-content:center;
  }
  .brand-lockup{justify-self:start;gap:8px}
  .brand-lockup img{width:38px;height:38px}
  .site-header .wordmark{font-size:1.13rem}
  .site-header nav{
    position:static;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    width:100%;
    padding:0;
    gap:4px 6px;
    color:#dce4e5;
    background:transparent;
    border:0;
    font-size:.72rem;
  }
  .site-header nav a{
    display:flex;
    min-width:0;
    min-height:34px;
    padding:5px 4px;
    align-items:center;
    justify-content:center;
    text-align:center;
    line-height:1.1;
    border:1px solid rgba(255,255,255,.09);
    border-radius:8px;
    background:rgba(255,255,255,.035);
  }
  .site-header nav a:after{display:none}
  .site-header nav a[aria-current="page"]{background:rgba(214,170,97,.14);border-color:rgba(214,170,97,.34)}
  .menu-toggle{display:none!important}
  .hero-official{min-height:calc(58vh - 116px)}
  .page-hero{padding-top:65px}
  .character-card{border-radius:18px}
  .character-card div{padding:14px}
  .amazon-float{right:10px;bottom:10px;max-width:calc(100vw - 20px);padding:9px 11px;font-size:0}
  .amazon-float:before{content:"Amazon ↗";font-size:.7rem;letter-spacing:.01em}
  .amazon-float span{display:none}
}

@media (max-width:380px){
  .site-header{padding-left:10px;padding-right:10px}
  .site-header nav{gap:4px;font-size:.68rem}
  .site-header nav a{padding-left:2px;padding-right:2px}
  .hero-official{min-height:calc(54vh - 116px)}
}

/* Renovación comercial y accesible · 11 agosto 2026 */
.skip-link{position:fixed;top:10px;left:10px;z-index:1000;padding:10px 14px;border-radius:8px;background:#fff;color:#101f2d;font-weight:800;transform:translateY(-150%);transition:transform .2s}
.skip-link:focus{transform:none}
.button-primary{display:inline-flex;align-items:center;gap:9px;width:max-content;margin-top:28px;padding:14px 20px;border:1px solid rgba(214,170,97,.72);border-radius:999px;background:#fff3d7;color:#132638;font-size:.9rem;font-weight:800;box-shadow:0 14px 34px rgba(3,11,18,.22);transition:transform .2s,box-shadow .2s}
.page-hero .button-primary{color:#132638}
.button-primary:hover{transform:translateY(-2px);box-shadow:0 18px 40px rgba(3,11,18,.3)}

.products-proof{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);gap:clamp(34px,7vw,92px);align-items:center;padding:clamp(72px,10vw,132px) clamp(20px,7vw,120px);color:#f3eee5;background:linear-gradient(135deg,#0a1725,#13293a 56%,#183330)}
.products-proof__copy{max-width:560px}
.products-proof__copy h2,.product-editorial__heading h2,.cylinders-section h2,.collection-cta h2{margin:.15em 0 .45em;font:600 clamp(2.25rem,4.4vw,4.6rem)/1 'Playfair Display',serif;letter-spacing:-.055em;color:#fff8ed;text-wrap:balance}
.products-proof__copy>p:not(.eyebrow),.product-editorial__heading>p:not(.eyebrow),.cylinders-section__copy>p:not(.eyebrow),.collection-cta p{color:#c8d2d3;font-size:1.04rem}
.product-stage{display:grid;grid-template-columns:1.1fr .9fr;grid-template-rows:1fr 1fr;gap:14px;min-height:640px}
.product-stage figure{margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.11);border-radius:22px;background:#f7f7f7;box-shadow:0 24px 58px rgba(2,10,18,.28)}
.product-stage__tall{grid-row:1/3}
.product-stage img{width:100%;height:100%;object-fit:cover}

.collection-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);align-items:center;gap:clamp(30px,6vw,80px);padding-right:clamp(20px,7vw,120px);overflow:hidden}
.collection-hero>div:first-child{max-width:780px;margin:0}
.collection-hero__product{align-self:end;justify-self:center;width:min(430px,100%);max-height:580px;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:28px 28px 0 0;box-shadow:0 32px 72px rgba(3,11,18,.38)}
.collection-hero__product img{width:100%;height:100%;object-fit:cover;object-position:center top}
.product-editorial{padding:clamp(72px,9vw,120px) clamp(20px,7vw,120px);background:#ece8df}
.product-editorial__heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.62fr);gap:28px 70px;align-items:end;max-width:1240px;margin:0 auto 42px}
.product-editorial__heading .eyebrow{grid-column:1/-1;margin-bottom:-8px}
.product-editorial__heading h2{color:#172434}
.product-editorial__heading>p:not(.eyebrow){color:#58636a;margin:0}
.product-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;max-width:1240px;margin:auto}
.product-photo{position:relative;margin:0;overflow:hidden;border:1px solid rgba(32,45,55,.12);border-radius:18px;background:#fff;box-shadow:0 18px 46px rgba(7,17,29,.1)}
.product-photo>a{display:block;height:100%;cursor:pointer}
.product-photo img{width:100%;height:100%;min-height:310px;object-fit:cover;transition:transform .45s ease}
.product-photo:hover img{transform:scale(1.025)}
.product-photo figcaption{position:absolute;left:12px;bottom:12px;padding:7px 10px;border-radius:999px;background:rgba(9,22,37,.86);color:#fff;font-size:.72rem;font-weight:800;backdrop-filter:blur(9px)}
.product-photo--feature{grid-column:span 2;grid-row:span 2}
.product-photo--feature img{min-height:636px}
.cylinders-section{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);gap:clamp(34px,7vw,90px);align-items:center;padding:clamp(72px,9vw,120px) clamp(20px,7vw,120px);background:linear-gradient(135deg,#0b1828,#132a38 62%,#18322f);color:#f4f0e8}
.cylinders-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:900px}
.cylinders-grid .product-photo img{min-height:540px}
.collection-cta{padding:clamp(80px,11vw,145px) 20px;text-align:center;background:#111d2a;color:#f5f1e9}
.collection-cta>div{max-width:740px;margin:auto;display:grid;justify-items:center}

@media(max-width:900px){
  .products-proof,.cylinders-section{grid-template-columns:1fr}
  .products-proof__copy,.cylinders-section__copy{max-width:720px}
  .product-stage{min-height:560px}
  .product-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:700px){
  .collection-hero{grid-template-columns:1fr;padding:62px 20px 0}
  .collection-hero__product{width:min(360px,92%);max-height:430px}
  .product-editorial__heading{grid-template-columns:1fr}
  .product-editorial__heading .eyebrow{grid-column:auto}
  .product-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .product-photo--feature{grid-column:span 2;grid-row:auto}
  .product-photo--feature img{min-height:390px}
  .product-photo img{min-height:260px}
  .product-stage{grid-template-columns:1fr 1fr;min-height:490px}
  .cylinders-grid .product-photo img{min-height:430px}
}
@media(max-width:420px){
  .products-proof{padding-left:14px;padding-right:14px}
  .product-stage{grid-template-columns:1fr 1fr;grid-template-rows:310px 210px;gap:8px;min-height:0}
  .product-stage__tall{grid-column:1/-1;grid-row:auto}
  .product-stage figure{border-radius:14px}
  .product-gallery{grid-template-columns:1fr}
  .product-photo--feature{grid-column:auto}
  .product-photo img,.product-photo--feature img{min-height:360px}
  .cylinders-grid{gap:8px}
  .cylinders-grid .product-photo img{min-height:350px}
  .button-primary{width:100%;justify-content:center}
}


/* Canon 2026: atmósfera exclusiva de Habitantes */
body.residents-page{min-height:100%;background:linear-gradient(150deg,#4b386f 0%,#59427d 42%,#3f467d 100%);color:#fff;position:relative}
body.residents-page:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;background:radial-gradient(circle at 8% 14%,rgba(255,255,255,.48) 0 1px,transparent 1.8px),radial-gradient(circle at 78% 23%,rgba(224,211,255,.38) 0 1px,transparent 1.7px),radial-gradient(circle at 28% 68%,rgba(255,255,255,.28) 0 1px,transparent 1.8px),radial-gradient(circle at 91% 77%,rgba(236,224,255,.32) 0 1px,transparent 1.8px);background-size:190px 170px,260px 230px,310px 280px,370px 330px;opacity:.4}
.residents-page .site-header,.residents-page main,.residents-page .site-footer,.residents-page .amazon-float{position:relative;z-index:1}
.residents-page .page-hero{background:radial-gradient(circle at 80% 28%,rgba(240,190,255,.14),transparent 26%),linear-gradient(145deg,#3f2d63,#544077 56%,#3b4779);border-bottom-color:rgba(255,255,255,.12)}
.residents-page .page-hero p{color:#e5dcf0}.residents-page .page-hero .eyebrow{color:#f0d9a8}
.residents-page .section{background:transparent}
.residents-page .character-card{background:#15142a;border-color:rgba(255,255,255,.15);box-shadow:0 18px 42px rgba(24,12,47,.28)}
.residents-page .character-card figure{background:radial-gradient(circle at 50% 42%,color-mix(in srgb,var(--card-accent) 28%,transparent),transparent 46%),linear-gradient(155deg,#30264b,#17162d 72%)}
.residents-page .character-card div{background:linear-gradient(180deg,rgba(30,23,51,.9),#171529)}

/* Biografías web alineadas con el Compendio editorial 2026 */
.bio-page{background:linear-gradient(180deg,#fff8f3 0,#fff 38%,#f5fbf9 100%);padding:clamp(1.2rem,3vw,3rem) 0 5rem;color:#241f1c}.bio-profile{width:min(1180px,calc(100% - 2rem));margin:auto}.bio-back{display:inline-flex;color:#5b4638;font-weight:800;text-decoration:none;margin:.3rem 0 1.3rem}.bio-hero{display:grid;grid-template-columns:minmax(300px,.88fr) minmax(0,1.12fr);gap:clamp(2rem,5vw,5rem);align-items:center;background:#fff;border:1px solid #eadfd6;border-radius:32px;padding:clamp(1.2rem,3vw,2.4rem);box-shadow:0 24px 65px rgba(77,52,35,.11);overflow:hidden}.bio-portrait{min-height:520px;border-radius:25px;background:radial-gradient(circle at 50% 35%,#fff 0,#f7eee6 68%,#ede0d4 100%);position:relative;display:grid;place-items:center;overflow:hidden}.bio-portrait span{position:absolute;top:1rem;left:1rem;z-index:2;border-radius:999px;background:#49336f;color:#fff;padding:.55rem .8rem;letter-spacing:.09em;font-size:.72rem;font-weight:900;text-transform:uppercase}.bio-portrait img{display:block;max-width:100%;max-height:540px;width:auto;height:auto;object-fit:contain;filter:drop-shadow(0 20px 22px rgba(50,30,15,.16))}.bio-kicker,.bio-eyebrow{font-weight:900;letter-spacing:.13em;text-transform:uppercase;color:#62508c;font-size:.76rem}.bio-lead h1{font-size:clamp(3.5rem,8vw,7rem);line-height:.88;margin:.3rem 0 .75rem;letter-spacing:-.065em}.bio-role{font-size:clamp(1.15rem,2.5vw,1.9rem);font-weight:800;color:#8a4d2e;margin:0 0 1.4rem}.bio-intro{font-size:clamp(1.05rem,1.6vw,1.22rem);line-height:1.72;color:#493f39}.bio-lead blockquote{margin:1.8rem 0 0;border-left:4px solid #df9c45;padding:.4rem 0 .4rem 1.2rem;color:#5e493c;font-size:1.06rem;font-weight:750;line-height:1.55}.bio-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem;margin:1.25rem 0}.bio-card{background:#fff;border:1px solid #e9e2dc;border-radius:24px;padding:clamp(1.25rem,3vw,2rem);box-shadow:0 12px 32px rgba(61,43,29,.055)}.bio-card h2,.bio-links h2{font-size:clamp(1.3rem,2.4vw,1.9rem);margin:.25rem 0 .85rem}.bio-card p{line-height:1.72;margin:.4rem 0}.bio-chips{display:flex;flex-wrap:wrap;gap:.65rem;list-style:none;padding:0;margin:1rem 0 0}.bio-chips li{background:#f0ecf7;border-radius:999px;padding:.6rem .8rem;font-weight:750}.bio-chips--tension li{background:#f8ece8}.bio-links{padding:clamp(1.5rem,3vw,2.4rem);background:#fff;border:1px solid #e9e2dc;border-radius:28px}.bio-relations{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.85rem;margin-top:1.2rem}.bio-relation{display:grid;grid-template-columns:70px 1fr;align-items:center;gap:.75rem;padding:.75rem;border:1px solid #e6ddd6;border-radius:18px;text-decoration:none;color:inherit;background:#fff;transition:.2s ease}.bio-relation:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(52,37,26,.1)}.bio-relation img{width:70px;height:70px;object-fit:contain;border-radius:14px;background:#f8f2ed}.bio-relation span{display:grid;gap:.18rem}.bio-relation small{color:#6f625a;line-height:1.25}.bio-relation b{grid-column:2;color:#62508c;font-size:.84rem}
@media(max-width:760px){.bio-page{padding-top:.7rem}.bio-profile{width:min(100% - 1rem,1180px)}.bio-hero{grid-template-columns:1fr;border-radius:22px;padding:.8rem;gap:1.5rem}.bio-portrait{min-height:350px}.bio-portrait img{max-height:390px}.bio-lead{padding:.3rem .7rem 1.1rem}.bio-lead h1{font-size:clamp(3rem,18vw,5.3rem)}.bio-grid{grid-template-columns:1fr}.bio-links{padding:1.2rem}.bio-relations{grid-template-columns:1fr}}

/* Renovación integral · septiembre 2026 */
.home-stories{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);gap:clamp(36px,7vw,92px);align-items:center;padding:clamp(76px,10vw,132px) clamp(20px,7vw,120px);background:radial-gradient(circle at 82% 14%,rgba(224,123,170,.13),transparent 30%),radial-gradient(circle at 12% 88%,rgba(72,137,137,.16),transparent 34%),linear-gradient(135deg,#0b1725 0%,#182536 54%,#211c30 100%);color:#f5f1e8}
.home-stories__copy{max-width:540px}.home-stories__copy h2{font:600 clamp(2.35rem,4.5vw,4.8rem)/1 'Playfair Display',serif;letter-spacing:-.055em;margin:.15em 0 .45em;color:#fff8ed}.home-stories__copy>p:not(.eyebrow){color:#c8d2d3;font-size:1.04rem}.home-stories__cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.home-story-card{display:grid;grid-template-rows:260px auto auto;overflow:hidden;border-radius:22px;background:#0e1d2b;color:#fff7ea;box-shadow:0 22px 56px rgba(7,17,29,.34);transition:transform .25s}.home-story-card:hover{transform:translateY(-5px)}.home-story-card img{width:100%;height:100%;object-fit:cover}.home-story-card span{padding:18px 20px 2px;color:#dfb86f;font-size:.73rem;font-weight:850;letter-spacing:.1em}.home-story-card strong{padding:4px 20px 22px;font:600 1.35rem/1.2 'Playfair Display',serif}

.universe-page{background:#0a1725}.universe-page .site-footer{margin-top:0}.universe-hero{position:relative;min-height:calc(92vh - 72px);display:flex;align-items:flex-end;overflow:hidden;background:#10283a}.universe-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.universe-hero__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,16,27,.12) 24%,rgba(5,16,27,.78) 86%,#071522)}.universe-hero__copy{position:relative;z-index:1;width:min(900px,calc(100% - 40px));margin:0 auto clamp(58px,9vw,120px);color:#fff}.universe-hero__copy h1{font:600 clamp(3rem,7vw,7.2rem)/.91 'Playfair Display',serif;letter-spacing:-.065em;margin:.15em 0 .28em;text-wrap:balance}.universe-hero__copy>p:not(.eyebrow){max-width:690px;color:#e4e7e4;font-size:clamp(1rem,1.8vw,1.25rem)}.universe-actions,.origin-section__links{display:flex;align-items:center;flex-wrap:wrap;gap:18px}.universe-link{display:inline-flex;gap:7px;align-items:center;color:#f2ca89;font-weight:800}.universe-link:hover{gap:12px}.universe-intro{max-width:none;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:clamp(38px,8vw,110px);align-items:end;background:#071522;color:#f7f2e8}.universe-intro__heading,.universe-intro__copy{max-width:680px}.universe-intro h2,.origin-section h2,.universe-section-heading h2,.universe-stories h2,.growing-world h2,.universe-collection h2,.universe-final-cta h2{font:600 clamp(2.4rem,5vw,5.3rem)/.98 'Playfair Display',serif;letter-spacing:-.06em;margin:.15em 0 .42em;text-wrap:balance}.universe-intro__copy{color:#c7d2d3;font-size:1.08rem}.origin-section{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);align-items:center;gap:clamp(40px,8vw,110px);padding:clamp(74px,10vw,136px) clamp(20px,7vw,120px);background:radial-gradient(circle at 15% 20%,rgba(214,170,97,.18),transparent 34%),linear-gradient(135deg,#122f31,#112536 70%,#101b2a);color:#f8f2e8}.origin-section__portrait{margin:0;min-height:580px;display:grid;place-items:end center;border:1px solid rgba(255,255,255,.1);border-radius:30px;overflow:hidden;background:radial-gradient(circle,#39515c,#0c1a29 72%)}.origin-section__portrait img{max-height:620px;object-fit:contain;filter:drop-shadow(0 24px 30px rgba(0,0,0,.35))}.origin-section__copy{max-width:720px}.origin-section__copy>p:not(.eyebrow){color:#cad4d3;font-size:1.08rem}.universe-residents{background:#eae5dc;color:#172434;text-align:center}.universe-section-heading{max-width:900px;margin:0 auto 48px}.universe-section-heading>p:not(.eyebrow){max-width:680px;margin:auto;color:#58646b}.universe-character-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;max-width:1180px;margin:auto}.universe-character{position:relative;display:grid;grid-template-rows:360px auto;overflow:hidden;border-radius:24px;background:linear-gradient(155deg,#273c4d,#0c1928);color:#fff;box-shadow:0 18px 50px rgba(8,18,28,.14);transition:transform .25s}.universe-character:hover{transform:translateY(-6px)}.universe-character img{width:100%;height:100%;object-fit:contain;padding:14px;filter:drop-shadow(0 18px 18px rgba(0,0,0,.28))}.universe-character span{padding:16px;font:600 1.35rem 'Playfair Display',serif;background:#0c1928}.universe-centered-button{margin:38px auto 0}.universe-stories{display:grid;grid-template-columns:minmax(280px,.65fr) minmax(0,1.35fr);gap:clamp(38px,7vw,90px);align-items:start;padding:clamp(76px,10vw,136px) clamp(20px,7vw,120px);background:#0a1725;color:#f8f2e8}.universe-stories__heading{position:sticky;top:110px}.universe-stories__heading>p:not(.eyebrow){color:#c4cfd1}.universe-stories__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.universe-story-card{display:grid;grid-template-rows:260px auto auto;overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:22px;background:#122536;color:#fff;transition:transform .25s}.universe-story-card:hover{transform:translateY(-5px)}.universe-story-card img{width:100%;height:100%;object-fit:cover}.universe-story-card span{padding:17px 18px 2px;color:#ddb66f;font-size:.72rem;font-weight:850;letter-spacing:.1em}.universe-story-card strong{padding:4px 18px 20px;font:600 1.3rem/1.2 'Playfair Display',serif}.universe-story-card--wide{grid-column:1/-1;grid-template-rows:340px auto auto}.growing-world{display:grid;grid-template-columns:1fr auto;gap:50px;align-items:center;background:linear-gradient(135deg,#182d33,#17243a);color:#f8f2e8}.growing-world__copy{max-width:820px}.growing-world__copy p:not(.eyebrow){max-width:680px;color:#c7d1d2}.growing-world>img{width:150px;height:150px;border-radius:26px;box-shadow:0 20px 48px rgba(0,0,0,.25)}.universe-collection{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:clamp(38px,8vw,100px);align-items:center;padding:clamp(76px,10vw,136px) clamp(20px,7vw,120px);background:#eae5dc;color:#172434}.universe-collection__gallery{display:grid;grid-template-columns:1fr .76fr;gap:14px;height:620px}.universe-collection__gallery img{width:100%;height:100%;object-fit:cover;border-radius:24px;box-shadow:0 20px 58px rgba(8,18,29,.14)}.universe-collection__copy>p:not(.eyebrow){color:#56636b}.universe-final-cta{padding:clamp(90px,13vw,170px) 20px;text-align:center;background:radial-gradient(circle at 50% 120%,rgba(240,90,145,.18),transparent 48%),#071522;color:#fff}.universe-final-cta>div{max-width:920px;margin:auto}.universe-final-cta__links{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:36px}.universe-final-cta__links a{padding:14px 19px;border:1px solid rgba(214,170,97,.5);border-radius:999px;background:rgba(255,255,255,.05);font-weight:800}.universe-final-cta__links a:hover{background:#fff2d7;color:#132638}

@media(max-width:900px){.cylinders-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-stories,.universe-stories{grid-template-columns:1fr}.universe-stories__heading{position:static}.universe-character-row{grid-template-columns:repeat(2,minmax(0,1fr))}.universe-intro,.origin-section,.universe-collection{grid-template-columns:1fr}.origin-section__portrait{min-height:480px}.universe-collection__gallery{height:520px}}
@media(max-width:620px){.home-stories__cards,.universe-stories__grid{grid-template-columns:1fr}.home-story-card{grid-template-rows:230px auto auto}.universe-hero{min-height:760px}.universe-hero__copy{width:min(100% - 28px,900px);margin-bottom:45px}.universe-hero__copy h1{font-size:clamp(2.8rem,14vw,4.6rem)}.universe-actions,.origin-section__links{align-items:stretch;flex-direction:column}.universe-actions .button-primary,.origin-section__links .button-primary{width:100%;justify-content:center}.universe-intro{padding-left:18px;padding-right:18px}.origin-section{padding-left:14px;padding-right:14px}.origin-section__portrait{min-height:390px}.origin-section__portrait img{max-height:440px}.universe-character-row{gap:9px}.universe-character{grid-template-rows:250px auto;border-radius:16px}.universe-story-card,.universe-story-card--wide{grid-column:auto;grid-template-rows:230px auto auto}.growing-world{grid-template-columns:1fr}.growing-world>img{width:110px;height:110px}.universe-collection__gallery{height:420px;gap:8px}.universe-collection__gallery img{border-radius:16px}.universe-final-cta__links{display:grid}.universe-final-cta__links a{width:100%}}

.contact-page{background:#eae5dc}.contact-hero{position:relative;min-height:650px;display:flex;align-items:flex-end;overflow:hidden;background:#0b1727}.contact-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.64}.contact-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,17,29,.94) 0,rgba(6,17,29,.78) 48%,rgba(6,17,29,.15)),linear-gradient(0deg,rgba(6,17,29,.65),transparent 50%)}.contact-hero__copy{position:relative;z-index:1;width:min(1180px,calc(100% - 40px));margin:0 auto clamp(58px,9vw,110px);color:#fff}.contact-hero h1{max-width:760px;font:600 clamp(3.2rem,7vw,7rem)/.92 'Playfair Display',serif;letter-spacing:-.065em;margin:.12em 0 .28em}.contact-hero__copy>p:not(.eyebrow){max-width:620px;color:#d9e0df;font-size:1.08rem}.contact-paths{padding:clamp(76px,10vw,132px) clamp(20px,7vw,120px);background:#eae5dc}.contact-paths__heading{max-width:760px;margin-bottom:42px}.contact-paths h2{font:600 clamp(2.35rem,4.7vw,4.8rem)/1 'Playfair Display',serif;letter-spacing:-.055em;margin:.15em 0}.contact-paths__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.contact-path{display:grid;min-height:240px;padding:26px;border:1px solid rgba(32,45,55,.13);border-radius:22px;background:#fff;color:#172434;box-shadow:0 16px 40px rgba(7,17,29,.08);transition:transform .25s,box-shadow .25s}.contact-path:hover{transform:translateY(-5px);box-shadow:0 24px 52px rgba(7,17,29,.13)}.contact-path span{color:#bd8b42;font-weight:850;letter-spacing:.1em}.contact-path strong{align-self:end;font:600 1.6rem/1.1 'Playfair Display',serif}.contact-path small{color:#5b676e;font-size:.9rem}.contact-path:after{content:"→";justify-self:end;color:#d92b72;font-size:1.2rem;font-weight:900}
@media(max-width:760px){.contact-hero{min-height:620px}.contact-hero:after{background:linear-gradient(0deg,rgba(6,17,29,.94) 0,rgba(6,17,29,.66) 68%,rgba(6,17,29,.2))}.contact-hero__copy{width:min(100% - 28px,1180px);margin-bottom:42px}.contact-paths__grid{grid-template-columns:1fr}.contact-path{min-height:190px}}
