/* ================= Estilo Apple: aire, tipografía grande, vidrio, tarjetas planas ================= */
:root{
  --f-display:-apple-system,BlinkMacSystemFont,"SF Pro Display","Inter","Segoe UI",Roboto,Arial,sans-serif;
  --f-body:-apple-system,BlinkMacSystemFont,"SF Pro Text","Inter","Segoe UI",Roboto,Arial,sans-serif;
  --bg:#FFFFFF;--surface:#FFFFFF;--surface2:#F5F5F7;--fg:#1D1D1F;--muted:#6E6E73;--line:#D2D2D7;
  --glass:rgba(255,255,255,.72);--r:14px;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--bg:#000000;--surface:#161618;--surface2:#101012;--fg:#F5F5F7;--muted:#A1A1A6;--line:#2C2C2E;--glass:rgba(22,22,24,.72)}}
:root[data-theme="dark"]{--bg:#000000;--surface:#161618;--surface2:#101012;--fg:#F5F5F7;--muted:#A1A1A6;--line:#2C2C2E;--glass:rgba(22,22,24,.72)}
body{font-family:var(--f-body);font-size:17px;line-height:1.47;letter-spacing:-.011em}
h1,h2,h3,h4{font-family:var(--f-display);letter-spacing:-.025em;line-height:1.07}
h2{font-weight:700;font-size:clamp(2.3rem,5.4vw,3.8rem);letter-spacing:-.03em}
h3{font-weight:600;font-size:1.55rem}
.eyebrow,.facts span,.tablist button small,.pcard dt,.panel dt,.mega h4,footer h4,label,.badge,.info .eyebrow{font-family:var(--f-body);text-transform:none;letter-spacing:0}
.eyebrow{font-size:1.05rem;font-weight:600;color:var(--accent-text)}
.sec-head .eyebrow::before{display:none}
.btn{text-transform:none;letter-spacing:-.01em;font-weight:500;font-size:1.02rem;padding:12px 24px}
.quick{display:none}

/* Cabecera de vidrio */
.head{background:var(--glass);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);box-shadow:none;border-bottom:1px solid var(--line)}
body::before{background:var(--glass)}
.head .wrap{min-height:64px;gap:18px}
.head .logo,footer .logo{background:transparent;padding:0}
.logo img{height:42px}
:root[data-theme="dark"] .head .logo{background:#fff;border-radius:10px;padding:4px 10px}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .head .logo{background:#fff;border-radius:10px;padding:4px 10px}}
.nav>a,.nav>button{font-size:.82rem;font-weight:400;text-transform:none;letter-spacing:0;padding:22px 11px;color:var(--fg);opacity:.85}
.nav>a:hover,.nav>button:hover{opacity:1}
.nav>a::after,.nav>button::after{bottom:14px;height:2px;left:11px;right:11px}
.nav>a.cta{font-size:.82rem;font-weight:500;padding:8px 16px;margin-left:6px;opacity:1;background:var(--brand);color:var(--brand-ink)}
.search{margin-left:6px}
.search input{width:140px;font-size:.82rem;padding:7px 12px 7px 32px;transition:width .2s;background:var(--surface2);border:1px solid transparent;color:var(--fg)}
.search input:focus{width:200px;outline:none;border-color:var(--line)}
.themebtn{background:transparent;border:0;color:var(--fg);font-size:1.1rem;padding:6px 8px;opacity:.7}
.mega{background:var(--glass);backdrop-filter:saturate(180%) blur(24px);-webkit-backdrop-filter:saturate(180%) blur(24px)}
.mega .feat{border-radius:24px;background:linear-gradient(135deg,var(--hero),var(--hero2))}
.mega h4{font-size:.78rem;color:var(--muted);font-weight:500}

/* Hero centrado con escenario inferior */
.hero{background:var(--bg);color:var(--fg)}
.hero::before{display:none}
.slide{display:flex;flex-direction:column}
.slide .wrap{order:1;padding-block:72px 40px;min-height:0;justify-items:center;grid-template-columns:minmax(0,1fr);text-align:center}
.hcard{background:transparent;box-shadow:none;border-radius:0;padding:0;max-width:900px;margin-inline:auto}
.hcard::before{display:none}
.slide h1{font-size:clamp(2.6rem,7.4vw,5.6rem);font-weight:700;letter-spacing:-.04em;line-height:1.02;margin:10px 0 18px}
.slide p.lead{font-size:clamp(1.15rem,2.2vw,1.5rem);color:var(--muted);max-width:34ch;margin:0 auto 28px;line-height:1.3}
.slide .actions{justify-content:center;align-items:center;gap:6px}
.hcard .btn-ghost{border:0;color:var(--link);padding:12px 14px;font-size:1.1rem}
.hcard .btn-ghost::after{content:"›";font-size:1.3em;line-height:.8}
:root[data-theme="dark"] .hcard .btn-ghost{color:var(--link)}
.slide .art{order:2;position:relative;inset:auto;z-index:0;width:calc(100% - 32px);max-width:1240px;height:clamp(260px,36vw,460px);margin:0 auto;border-radius:32px;overflow:hidden;background:linear-gradient(135deg,var(--hero),var(--hero2))}
.slide .art svg{position:absolute;inset:0;margin:auto;height:100%;width:70%;right:auto;top:auto}
.slide .art::before{right:-4%;top:-20%;bottom:-20%;width:40%}
.hero .ctl{position:static}
.hero .ctl .wrap{justify-content:center;padding-block:22px 8px}
.dots button{background:var(--line)}
.dots button[aria-current="true"]{background:var(--line)}
.pp{margin-left:6px;background:var(--surface2);color:var(--fg);border:0;font-family:var(--f-body)}
.facts{margin-top:0;background:var(--bg)}
.facts .wrap{background:none;box-shadow:none;border-radius:0;padding-block:40px 20px}
.facts div{border-left:0;padding:8px 12px;text-align:center}
.facts div:first-child{padding-left:12px}
.facts b{font-family:var(--f-display);font-size:clamp(1.5rem,2.8vw,2.2rem);font-weight:700;letter-spacing:-.03em;color:var(--fg)}
.facts b::before{display:none}
.facts span{font-size:.92rem;color:var(--muted)}

/* Secciones */
section{padding-block:120px}
.sec-head{text-align:center;margin-inline:auto;justify-items:center;max-width:820px;margin-bottom:56px}
.sec-head p{font-size:clamp(1.1rem,2vw,1.35rem);line-height:1.35;max-width:40ch}
.alt{background:var(--surface2)}
.wizard{background:var(--bg);padding-block:80px 40px;text-align:center}
.wizard h2{margin-top:8px}
.seg{margin:26px auto 30px;background:var(--surface2);border:0;padding:4px;gap:2px}
.seg button{text-transform:none;letter-spacing:0;font-weight:500;font-size:.95rem;color:var(--fg)}
.seg button[aria-pressed="true"]{background:var(--surface);color:var(--fg);box-shadow:0 1px 4px rgba(0,0,0,.18)}
.tiles{max-width:1100px;margin-inline:auto}
.tile{background:var(--surface2);border:2px solid transparent;border-radius:24px;text-align:left;min-height:148px;font-size:1.05rem;font-weight:600;letter-spacing:-.01em}
.tile svg{background:var(--surface);color:var(--fg)}
.tile[aria-pressed="true"]{background:var(--surface2);border-color:var(--accent);box-shadow:none}
.wiz-foot{justify-content:center}
.cards{gap:16px}
.card{background:var(--surface2);box-shadow:none;border-radius:32px;padding:36px 30px;gap:16px}
.alt .card{background:var(--surface)}
.card:hover{transform:scale(1.015);box-shadow:none}
.card h3{font-size:1.75rem;letter-spacing:-.025em}
.card .ic{background:var(--surface);color:var(--fg)}
.alt .card .ic{background:var(--surface2)}
.card li::before{border-radius:50%;rotate:0;width:6px;height:6px}
.card .more,.news a{text-transform:none;letter-spacing:0;font-weight:500;font-size:1rem;color:var(--link)}
.card .more::after{content:""}
.tabs{border:0;border-radius:32px;background:var(--surface)}
.tablist{background:var(--surface2)}
.tablist button{font-weight:600;letter-spacing:-.01em}
.panel h3{font-size:2.4rem;letter-spacing:-.03em}
.panel dt{font-size:.85rem}
.proj,.news{gap:16px}
.pcard,.news article{border-radius:32px;box-shadow:none;background:var(--surface2)}
.alt .pcard,.alt .news article{background:var(--surface)}
.news article:first-child{background:linear-gradient(135deg,var(--hero),var(--hero2))}
.news h3{letter-spacing:-.025em}
.chips{justify-content:center}
.chips button{background:var(--surface);border:0;font-weight:500}
.chips button[aria-pressed="true"]{background:var(--fg);color:var(--bg)}
.about .values div{background:var(--surface2);border-radius:28px;box-shadow:none}
.values b{font-family:var(--f-display);font-size:1.4rem;letter-spacing:-.02em}
.about h2{text-align:left}
form{border:0;background:var(--surface);border-radius:32px;box-shadow:none}
.alt form{background:var(--surface)}
input,select,textarea{background:var(--surface2);border:1px solid transparent;border-radius:14px}
input:focus,select:focus,textarea:focus{border-color:var(--accent);background:var(--surface)}
label{font-size:.85rem;font-weight:500;color:var(--muted)}
.info .row{border-top:1px solid var(--line)}
.info .val{font-family:var(--f-display);font-size:1.3rem;font-weight:500;letter-spacing:-.01em}
.copy{font-family:var(--f-body);background:var(--surface);border:0}
.badge{border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:.8rem;font-weight:500}

/* Banda de llamada */
.band{background:var(--bg);color:#fff;padding-block:0 120px}
.band::before{display:none}
.band .wrap{width:calc(100% - 32px);max-width:1240px;padding:80px 32px;border-radius:32px;background:linear-gradient(135deg,var(--hero),var(--hero2));flex-direction:column;justify-content:center;text-align:center;gap:26px}
.band h2{max-width:18ch;margin-inline:auto;color:#fff}
.band p{color:var(--hero-muted);margin:12px auto 0;font-size:1.2rem}
.band .tel{color:var(--accent);font-family:var(--f-display);font-size:clamp(1.8rem,4vw,2.8rem);font-weight:700;letter-spacing:-.02em;margin-top:18px}
.band .btn-primary{background:var(--accent);color:var(--accent-ink)}
.band .btn-ghost{color:#fff}

/* Pie claro */
footer{background:var(--surface2);color:var(--muted);border-top:1px solid var(--line);font-size:.88rem;padding-block:56px 24px}
footer h4{color:var(--fg);font-size:.82rem;font-weight:600}
footer a{color:var(--muted)}
footer a:hover{color:var(--fg)}
footer .logo{color:var(--fg)}
:root[data-theme="dark"] footer .logo{background:#fff;border-radius:10px;padding:6px 12px}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) footer .logo{background:#fff;border-radius:10px;padding:6px 12px}}
.legal{border-top-color:var(--line)}
@media (max-width:900px){
  section{padding-block:80px}
  .nav>a,.nav>button{font-size:1.1rem;padding:16px 4px;opacity:1}
  .nav>a.cta{font-size:1rem;padding:13px 16px}
  .search{margin:12px 0 0}.search input,.search input:focus{width:100%}
  .themebtn{justify-self:start;margin-top:6px}
  .slide .wrap{padding-block:48px 28px}
  .slide .art svg{width:100%}
  .band{padding-bottom:80px}.band .wrap{padding:56px 22px}
}
