:root{
  --pink:#ff3f9f;
  --pink-2:#ff66b8;
  --pink-3:#ffd5ea;
  --pink-soft:#fff1f8;
  --pink-deep:#a82567;
  --pink-dark:#7a184c;
  --white:#ffffff;
  --off:#fff8fc;
  --text:#5e2448;
  --muted:#8e5b78;
  --line:rgba(255, 84, 168, .18);
  --line-strong:rgba(255, 84, 168, .32);
  --shadow:0 24px 60px rgba(197, 44, 120, .16);
  --shadow-strong:0 28px 70px rgba(181, 42, 110, .23);
  --radius:28px;
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--text);
  background-color:#fff8fc;
  background:
    linear-gradient(180deg, rgba(255,249,253,.74) 0%, rgba(255,232,244,.58) 55%, rgba(255,246,251,.78) 100%),
    url('/assets/img/bg-abanico-topos-difuminado.webp') center top / cover no-repeat fixed,
    radial-gradient(circle at 12% 10%, rgba(255,255,255,.92), transparent 18%),
    radial-gradient(circle at 86% 8%, rgba(255,255,255,.55), transparent 16%),
    linear-gradient(180deg, #fff9fd 0%, #ffe8f4 55%, #fff6fb 100%);
  min-height:100vh;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
ul{margin:.6rem 0 0;padding-left:1.1rem}
.container{width:min(1180px,calc(100% - 32px));margin-inline:auto}
.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:16px;top:16px;z-index:60;background:#fff;padding:.75rem 1rem;border-radius:999px;box-shadow:var(--shadow)}
.topbar{position:sticky;top:0;z-index:40;padding:14px 0;background:linear-gradient(180deg, rgba(255,248,252,.9), rgba(255,248,252,.78));backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.55)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.brand{display:flex;align-items:center;gap:.9rem;font-weight:1000;color:var(--pink-deep);letter-spacing:-.04em;min-width:290px}
.brand-logo{width:58px;height:58px;object-fit:cover;border-radius:50%;box-shadow:0 8px 18px rgba(255,63,159,.24),0 0 0 7px rgba(255,63,159,.08);border:3px solid rgba(255,255,255,.86)}
.brand span{display:grid;line-height:.95;font-size:1.24rem}
.brand small{font-size:.58rem;letter-spacing:.105em;text-transform:uppercase;color:#9c5d7f;margin-top:.34rem;font-weight:1000;line-height:1.18;max-width:250px}
.menu-toggle{display:none;border:1px solid var(--line-strong);background:#fff;border-radius:999px;padding:.78rem 1rem;font-weight:900;color:var(--pink-deep);box-shadow:var(--shadow);cursor:pointer}
.menu{display:flex;align-items:center;gap:.48rem;flex-wrap:wrap}
.menu a{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.78rem 1.08rem;border-radius:999px;font-size:.82rem;line-height:1;font-weight:1000;letter-spacing:.055em;text-transform:uppercase;color:var(--pink-deep);background:linear-gradient(180deg,#fff,#fff6fb);border:1px solid rgba(255,63,159,.28);box-shadow:0 8px 18px rgba(255,63,159,.09), inset 0 1px 0 rgba(255,255,255,.9);transition:transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease}
.menu a:before{content:"✦";font-size:.68rem;margin-right:.38rem;color:var(--pink-2);filter:drop-shadow(0 0 6px rgba(255,63,159,.38))}
.menu a:after{content:"";position:absolute;inset:4px;border-radius:999px;border:1px solid rgba(255,255,255,.75);pointer-events:none}
.menu a:hover{transform:translateY(-2px);background:linear-gradient(135deg,#ff2f98,#ff75c0);color:#fff;box-shadow:0 15px 34px rgba(255,63,159,.28),0 0 24px rgba(255,63,159,.16)}
.menu a:hover:before,.menu a.active:before{color:#fff}
.menu a.active{background:linear-gradient(135deg,#ff2f98,#ff75c0);color:#fff;box-shadow:0 16px 36px rgba(255,63,159,.34),0 0 0 6px rgba(255,63,159,.10)}
.hero{padding:2.2rem 0 1.3rem}
.hero .container{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(350px,.98fr);gap:1.35rem;align-items:center}
.hero-card,.bubble,.item-card,.card,.admin-card,.stat,.login-card{background:rgba(255,255,255,.86);border:1px solid rgba(255,255,255,.78);box-shadow:var(--shadow);backdrop-filter:blur(10px)}
.hero-card{padding:clamp(1.5rem,3.5vw,3rem);border-radius:38px;position:relative;overflow:hidden}
.hero-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right, rgba(255,102,184,.28), transparent 38%),radial-gradient(circle at bottom left, rgba(255,63,159,.14), transparent 26%);pointer-events:none}
.kicker{display:inline-flex;align-items:center;gap:.5rem;padding:.48rem .82rem;border-radius:999px;background:rgba(255,63,159,.12);color:var(--pink-deep);text-transform:uppercase;letter-spacing:.13em;font-size:.78rem;font-weight:1000}
.dot{width:9px;height:9px;border-radius:50%;background:var(--pink)}
h1,h2,h3{margin:0 0 .9rem;line-height:.95;letter-spacing:-.05em}
h1{font-size:clamp(3rem,7vw,6.1rem);color:var(--pink-deep)}
h2{font-size:clamp(2rem,5vw,4rem);color:var(--pink-deep)}
h3{font-size:clamp(1.25rem,2vw,1.65rem);color:var(--pink-dark)}
.script{display:block;color:var(--pink);font-weight:1000}
p{margin:.45rem 0;color:var(--muted);line-height:1.65}
.lead{font-size:1.08rem;color:#7b4864;max-width:760px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.92rem 1.2rem;border-radius:999px;border:none;background:linear-gradient(135deg,var(--pink),var(--pink-2));color:#fff!important;font-weight:900;cursor:pointer;box-shadow:0 14px 28px rgba(255,63,159,.23);transition:transform .18s ease, box-shadow .18s ease}
.btn:hover{transform:translateY(-2px);box-shadow:0 18px 34px rgba(255,63,159,.30)}
.btn.ghost,.btn.secondary{background:#fff!important;color:var(--pink-deep)!important;border:1px solid var(--line-strong);box-shadow:none}
.btn.dark{background:linear-gradient(135deg,var(--pink-deep),var(--pink))!important;color:#fff!important}
.btn.small{padding:.62rem .86rem;font-size:.88rem}
.btn.danger{background:linear-gradient(135deg,#e04d6b,#c72855)!important}
.hero-actions,.actions,.admin-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.2rem}
.hero-visual{min-width:0}
.poster-stack{position:relative;min-height:620px;display:grid;place-items:center}
.poster-img{position:absolute;border-radius:28px;overflow:hidden;box-shadow:var(--shadow-strong)}
.poster-img img{width:100%;height:100%;object-fit:cover;display:block}
.poster-img.banner{inset:0;border-radius:36px}
.poster-img.logo{width:240px;height:240px;right:20px;top:26px;border-radius:50%;border:8px solid rgba(255,255,255,.7);box-shadow:0 16px 34px rgba(255,63,159,.34)}
.poster-img.flyer{width:290px;right:30px;bottom:30px;transform:rotate(-4deg)}
.float-label{position:absolute;left:26px;bottom:28px;max-width:290px;background:#fff;color:var(--pink-deep);padding:1rem 1.1rem;border-radius:24px;font-weight:900;line-height:1.35;box-shadow:var(--shadow);transform:rotate(2deg)}
.band{margin:0 0 1.2rem;background:linear-gradient(135deg,var(--pink-deep),var(--pink));color:#fff;overflow:hidden;box-shadow:0 14px 30px rgba(255,63,159,.2)}
.ticker{white-space:nowrap;display:flex;gap:2rem;padding:1rem 0;animation:ticker 28s linear infinite;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.ticker span{display:inline-flex;align-items:center;gap:.55rem}.ticker span:before{content:"•";font-size:1.6rem;line-height:0}
@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.section{padding:4.2rem 0}.section.alt{background:linear-gradient(180deg,rgba(255,255,255,.55),rgba(255,243,249,.92))}
.section-title{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.35rem}.section-title p{max-width:580px}
.grid{display:grid;gap:1rem}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.card{border-radius:var(--radius);padding:1.35rem;position:relative;overflow:hidden}
.card.blue{background:linear-gradient(180deg,#fff,#ffe9f6)}
.card.red{background:linear-gradient(135deg,var(--pink),#ff5fb2);color:#fff}.card.red p,.card.red h3{color:#fff}
.card.dark{background:linear-gradient(135deg,#c63d82,#9b2561);color:#fff}.card.dark p,.card.dark h3{color:#fff}
.intro-card{display:flex;align-items:end;min-height:320px;background-image:url('/assets/img/poster-vertical-2.webp');background-size:cover;background-position:center}
.intro-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.15),rgba(255,255,255,.75));pointer-events:none}
.intro-card>*{position:relative;z-index:1}
.tag{display:inline-flex;align-items:center;gap:.35rem;padding:.38rem .68rem;border-radius:999px;background:rgba(255,63,159,.12);color:var(--pink-deep);font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.tag.white{background:rgba(255,255,255,.16);color:#fff;border:1px solid rgba(255,255,255,.34)}
.big-quote{font-size:clamp(1.95rem,5vw,4.5rem);line-height:.96;font-weight:1000;color:var(--pink-deep);margin:0}
.feature-list{display:grid;gap:.8rem;margin-top:1.2rem}.feature{display:flex;gap:.7rem;align-items:flex-start}.feature b{display:grid;place-items:center;width:32px;height:32px;min-width:32px;border-radius:999px;background:linear-gradient(135deg,var(--pink),var(--pink-2));color:#fff}
.pack{min-height:260px;display:flex;flex-direction:column;justify-content:flex-end;background-size:cover;background-position:center;isolation:isolate}.pack:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(106,18,66,.72));z-index:-1}.pack *{color:#fff}
.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.service{background:#fff;border-radius:22px;padding:1rem;border:1px solid var(--line);font-weight:900;color:var(--pink-deep);box-shadow:0 8px 18px rgba(255,63,159,.08)}
.list-hero{padding:2rem 0 .35rem}.list-hero .bubble{border-radius:34px;padding:1.8rem 2rem}.items-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),330px));gap:1.15rem;justify-content:start;align-items:start}

/* Ajuste de espacio entre cabecera pública y tarjetas de listado */
.list-hero + .section.alt{padding-top:1.15rem}
@media (max-width:720px){.list-hero + .section.alt{padding-top:.75rem}}
.item-card{border-radius:30px;overflow:hidden;background:#fff;display:flex;flex-direction:column;box-shadow:0 22px 58px rgba(177,30,101,.16);border:1px solid rgba(255,255,255,.82)}
.thumb{height:190px;background:linear-gradient(135deg,var(--pink),var(--pink-2));display:grid;place-items:center;color:#fff;font-size:2.6rem;font-weight:1000;text-transform:uppercase}
.thumb.has-img{height:360px;padding:.72rem;background:linear-gradient(180deg,#fff6fb,#ffd9eb);display:grid;place-items:center;border-bottom:1px solid rgba(255,84,168,.14)}
.thumb.has-img img{width:100%;height:100%;object-fit:contain;display:block;border-radius:22px;background:#fff;box-shadow:0 14px 34px rgba(124,19,74,.14)}
.item-card-noticias .thumb.has-img,.item-card-agenda .thumb.has-img,.item-card-eventos .thumb.has-img,.item-card-carteles .thumb.has-img{height:390px}
.item-body{padding:1.05rem 1.1rem 1.15rem;background:#fff;position:relative;z-index:1}.item-body h3{font-size:1.32rem;line-height:1.02;margin:.48rem 0 .45rem;color:var(--pink-deep);letter-spacing:-.045em}.item-body .btn{margin-top:.65rem}.meta{color:var(--muted);font-size:.92rem;font-weight:800}.card-excerpt{margin:.55rem 0 0;color:#824360;line-height:1.5;font-weight:600}.empty{padding:2rem;text-align:center;background:rgba(255,255,255,.84);border-radius:26px;color:var(--muted);font-weight:800;box-shadow:var(--shadow)}
.detail{padding:2.6rem 0}.detail article{background:#fff;border-radius:34px;padding:clamp(1.5rem,4vw,3rem);box-shadow:var(--shadow)}.detail h1{color:var(--pink-deep)}
.prose{line-height:1.68;font-size:1.04rem}.prose img{border-radius:22px}.detail-image{margin:1rem 0 1.4rem;border-radius:28px;overflow:hidden;box-shadow:var(--shadow)}.detail-image img{width:100%;height:auto;max-height:620px;object-fit:cover}
.contact-box{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form{display:grid;gap:.9rem}.field{display:grid;gap:.38rem}.field label{font-weight:900;color:var(--pink-deep)}
input,textarea,select{width:100%;border:1px solid var(--line);background:#fff;color:var(--text);border-radius:16px;padding:.9rem 1rem;outline:0}
textarea{min-height:140px;resize:vertical}input:focus,textarea:focus,select:focus{border-color:var(--pink);box-shadow:0 0 0 4px rgba(255,63,159,.12)}
.notice{padding:.92rem 1rem;border-radius:18px;background:#fff2f8;color:var(--pink-deep);font-weight:800;border:1px solid rgba(255,63,159,.12)}.notice.ok{background:#ebfff5;color:#0d7a53}.notice.err{background:#ffe4ec;color:#a11c55}
.site-footer.mt-footer{padding:3rem 0 1.4rem;background:radial-gradient(circle at 10% 0,rgba(255,63,159,.18),transparent 28%),linear-gradient(180deg,#070207 0%,#010503 100%);color:#fff;border-top:1px solid rgba(255,255,255,.08)}
.footer-cards{display:grid;grid-template-columns:1.25fr .92fr .78fr .92fr;gap:1.15rem}.footer-card{background:rgba(3,12,8,.92);border:1px solid rgba(255,63,159,.25);border-radius:28px;padding:1.35rem;box-shadow:0 22px 52px rgba(0,0,0,.28);min-height:250px}.footer-logo-box{height:116px;border-radius:22px;background:#050505;border:1px solid rgba(255,255,255,.08);display:grid;place-items:center;margin-bottom:1rem}.footer-logo-box img{width:86px;height:86px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 5px rgba(255,255,255,.05),0 0 26px rgba(255,63,159,.55)}.footer-card h3{color:#fff;font-size:1.18rem;line-height:1.25;letter-spacing:-.02em;margin:.4rem 0 .7rem}.footer-card p{color:#ffd7ea;line-height:1.55;font-weight:650}.footer-tags{display:flex;gap:.55rem;flex-wrap:wrap;margin-top:1rem}.footer-tags span{display:inline-flex;padding:.5rem .75rem;border-radius:999px;background:var(--pink);color:#fff;font-weight:1000;font-size:.72rem;letter-spacing:.09em}.footer-kicker{display:block;color:#ff58ad;font-size:.82rem;font-weight:1000;letter-spacing:.16em;margin-bottom:1.15rem}.footer-contact-line{border-bottom:1px solid rgba(255,255,255,.1);padding:0 0 1rem;margin-bottom:1rem}.footer-contact-line small{display:block;color:#ffc4df;font-size:.7rem;letter-spacing:.16em;font-weight:1000;margin-bottom:.35rem}.footer-contact-line strong{display:block;color:#fff;font-size:clamp(1.35rem,2vw,1.85rem);line-height:1.05}.footer-nav-card nav{display:grid}.footer-nav-card a{color:#fff;font-weight:900;font-size:1.05rem;padding:.72rem 0;border-bottom:1px solid rgba(255,255,255,.1)}.footer-nav-card a:hover{color:#ff58ad}.footer-production-card p strong{color:#fff}.footer-web{display:inline-flex;margin-top:.8rem;color:#ff58ad!important;font-weight:1000;letter-spacing:.03em}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid rgba(255,255,255,.1);margin-top:1.4rem;padding-top:1.15rem;color:#ffd7ea;font-weight:850;font-size:.9rem}.footer-bottom span:last-child{text-align:right}

/* Admin */
.admin-body{background:linear-gradient(180deg,#fff9fd,#ffeef7);color:var(--text);min-height:100vh}
.admin-wrap{display:grid;grid-template-columns:290px 1fr;min-height:100vh;gap:0}
.admin-sidebar{background:linear-gradient(180deg,#fffefe,#fff2f8);border-right:1px solid rgba(255,84,168,.12);padding:1.1rem;position:sticky;top:0;height:100vh;overflow:auto;box-shadow:inset -1px 0 0 rgba(255,84,168,.08)}
.admin-sidebar h2{font-size:2.2rem;line-height:.9;margin:.3rem 0 1rem;color:var(--pink-deep);letter-spacing:-.06em;text-align:center}
.admin-sidebar a{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.72rem .82rem;border-radius:16px;color:var(--pink-dark);font-weight:850;transition:.18s ease}
.admin-sidebar a:hover,.admin-sidebar a.active{background:linear-gradient(135deg,var(--pink),var(--pink-2));color:#fff;box-shadow:0 10px 24px rgba(255,63,159,.2)}
.admin-main{padding:1.2rem;min-width:0}
.admin-top{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;background:rgba(255,255,255,.92);padding:1rem 1.15rem;border-radius:24px;box-shadow:var(--shadow)}
.admin-top h1{font-size:clamp(1.8rem,4vw,3.3rem);margin:0;color:var(--pink-deep)}
.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.stat{border-radius:22px;padding:1rem}.stat span{color:var(--muted);font-weight:800}.stat b{display:block;font-size:2.2rem;color:var(--pink-deep);margin-top:.35rem}
.admin-card{border-radius:24px;padding:1rem;overflow:hidden}.table-wrap{overflow:auto}
.admin-table{width:100%;border-collapse:collapse;min-width:760px}.admin-table th,.admin-table td{padding:.78rem;border-bottom:1px solid #f3dce8;text-align:left;vertical-align:top}.admin-table th{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:#9d6785}.admin-table tr:hover td{background:#fff8fc}
.admin-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.admin-form .span-2{grid-column:1/-1}.checkbox-line{display:flex;align-items:center;gap:.6rem;padding:.95rem;background:#fff9fc;border:1px solid var(--line);border-radius:16px}.checkbox-line input{width:auto}
.login-page{min-height:100vh;display:grid;place-items:center;padding:1rem}.login-card{width:min(480px,100%);border-radius:36px;padding:2rem}.login-card h1{font-size:3rem;color:var(--pink-deep);margin:.2rem 0 1rem}
.upload-zone{border:2px dashed rgba(255,84,168,.28);border-radius:22px;padding:1rem;background:#fff9fc;display:grid;gap:.8rem}.code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.86rem;background:#6b1843;color:#fff;border-radius:14px;padding:.7rem;overflow:auto}
.loading{opacity:.68;pointer-events:none}.hide{display:none!important}
.media-picker{background:#fff9fc;border:1px solid #f6dbe8;border-radius:20px;padding:.9rem}.media-picker-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.6rem;align-items:center}.file-button{cursor:pointer;white-space:nowrap;margin:0;display:inline-flex;align-items:center;justify-content:center}.media-alt{margin-top:.55rem;background:#fff}.media-preview{margin-top:.65rem;display:grid;gap:.45rem}.media-preview img{max-width:240px;width:100%;height:auto;border-radius:18px;border:1px solid #ecd9e5;box-shadow:0 8px 18px rgba(0,0,0,.08)}

@media (max-width:1100px){.items-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.service-grid,.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:980px){.footer-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-bottom{display:grid;text-align:left}.footer-bottom span:last-child{text-align:left}.hero .container,.contact-box,.grid.cols-2{grid-template-columns:1fr}.poster-stack{min-height:560px}.grid.cols-3,.grid.cols-4,.service-grid,.items-grid,.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-wrap{grid-template-columns:1fr}.admin-sidebar{position:relative;height:auto}.admin-sidebar nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem}.admin-form{grid-template-columns:1fr}}
@media (max-width:720px){.footer-cards{grid-template-columns:1fr}.footer-card{min-height:auto}.footer-contact-line strong{font-size:1.45rem}.topbar{padding:10px 0}.menu-toggle{display:inline-flex}.menu{display:none;position:absolute;top:88px;left:16px;right:16px;background:#fff;border-radius:24px;padding:.7rem;box-shadow:var(--shadow);align-items:stretch;flex-direction:column}.menu.open{display:flex}.menu a{justify-content:flex-start}.hero{padding-top:1rem}.hero-card{border-radius:30px}.poster-stack{min-height:430px}.poster-img.banner{inset:0}.poster-img.logo{width:150px;height:150px;right:14px;top:16px}.poster-img.flyer{width:210px;right:16px;bottom:16px}.float-label{left:14px;bottom:14px;max-width:220px;font-size:.95rem}.grid.cols-3,.grid.cols-4,.items-grid,.service-grid,.stat-grid{grid-template-columns:1fr}.section-title{display:block}.brand small{display:none}.admin-sidebar nav{grid-template-columns:1fr}.admin-top{align-items:flex-start;flex-direction:column}.media-picker-line{grid-template-columns:1fr}.file-button{width:100%}}


/* Ajustes finales portada + menú espectáculo */
.hero .container.hero-grid{grid-template-columns:minmax(0,.92fr) minmax(440px,1.08fr);align-items:stretch;gap:1.55rem}
.hero-card{display:flex;flex-direction:column;justify-content:center;min-height:620px}
.hero-card .lead b{color:var(--pink-deep);font-weight:1000}
.hero-main-photo{margin:0;border-radius:34px;overflow:hidden;box-shadow:var(--shadow-strong);border:1px solid rgba(255,255,255,.9);background:#fff;height:100%;min-height:620px;position:relative}
.hero-main-photo:after{content:"";position:absolute;inset:0;border-radius:34px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.55);pointer-events:none}
.hero-main-photo img{width:100%;height:100%;min-height:620px;object-fit:cover;object-position:center;display:block}
.menu a{font-size:.8rem;letter-spacing:.07em;text-transform:uppercase}
.menu a[href="/videos"]{text-transform:uppercase}
@media (max-width:980px){.footer-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-bottom{display:grid;text-align:left}.footer-bottom span:last-child{text-align:left}.hero .container.hero-grid{grid-template-columns:1fr}.hero-card{min-height:auto}.hero-main-photo{min-height:520px}.hero-main-photo img{min-height:520px}}
@media (max-width:720px){.footer-cards{grid-template-columns:1fr}.footer-card{min-height:auto}.footer-contact-line strong{font-size:1.45rem}.hero-main-photo{min-height:430px}.hero-main-photo img{min-height:430px}.brand small{display:block;font-size:.52rem;max-width:210px}.hero-card{padding:1.35rem}}

/* Bloques visuales complementarios */
.split-showcase{display:grid;grid-template-columns:minmax(320px,.85fr) minmax(0,1.15fr);gap:1rem;align-items:stretch}
.showcase-image{padding:0;overflow:hidden;min-height:520px}
.showcase-image img{width:100%;height:100%;object-fit:cover;display:block}
.soft-card{background:linear-gradient(180deg,#fff,#fff4fa)!important}
.strong-card{background:linear-gradient(135deg,#b42a75,#ff4fa8)!important;color:#fff}.strong-card h3,.strong-card p{color:#fff}
.feature-cards .card{min-height:300px}
.poster-card{padding:0;min-height:320px;isolation:isolate}.poster-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.poster-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(112,17,70,.05),rgba(112,17,70,.78));z-index:1}.overlay-copy{position:absolute;left:1rem;right:1rem;bottom:1rem;z-index:2;color:#fff}.overlay-copy h3,.overlay-copy p{color:#fff}
@media (max-width:980px){.footer-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-bottom{display:grid;text-align:left}.footer-bottom span:last-child{text-align:left}.split-showcase{grid-template-columns:1fr}.showcase-image{min-height:420px}}


/* Ajuste header: menú en una sola línea y claim correcto */
.topbar .container.nav{width:min(1240px,calc(100% - 36px));max-width:1240px}
.nav{align-items:center;gap:1.15rem}
.brand{flex:0 0 auto;min-width:285px;gap:.72rem}
.brand-logo{width:54px;height:54px}
.brand span{font-size:1.12rem;line-height:.9}
.brand small{display:block;font-size:.56rem;line-height:1.12;letter-spacing:.12em;max-width:245px}
.menu{flex:1;display:flex;align-items:center;justify-content:flex-end;gap:.34rem;flex-wrap:nowrap;min-width:0}
.menu a{white-space:nowrap;padding:.66rem .78rem;font-size:.74rem;letter-spacing:.055em}
.menu a:after{right:.34rem;top:.12rem}
.hero-card .lead{text-align:justify;text-justify:inter-word}

/* Nueva sección: Mari Trini llega a España */
.arrival-section{position:relative;overflow:hidden;padding:clamp(3rem,6vw,5.8rem) 0;background:
  radial-gradient(circle at 12% 18%,rgba(255,255,255,.18),transparent 18%),
  radial-gradient(circle at 82% 16%,rgba(255,63,159,.28),transparent 22%),
  linear-gradient(135deg,#ff3f9f 0%,#ff66b8 45%,#ffd4ea 100%);color:#fff}
.arrival-section:before{content:"";position:absolute;inset:0;background:
  radial-gradient(circle at 24px 24px,rgba(255,255,255,.18) 0 3px,transparent 4px),
  linear-gradient(90deg,rgba(255,255,255,.05),transparent 38%,rgba(255,255,255,.07));background-size:58px 58px,auto;opacity:.55;pointer-events:none}
.arrival-wrap{position:relative;z-index:1;display:grid;grid-template-columns:minmax(320px,.86fr) minmax(0,1.14fr);gap:clamp(1rem,3vw,2rem);align-items:center}
.arrival-photo{margin:0;min-height:640px;border-radius:42px;overflow:hidden;box-shadow:0 38px 90px rgba(255,63,159,.28);border:1px solid rgba(255,255,255,.22);background:#ff8bc8;position:relative}
.arrival-photo:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16), inset 0 -120px 120px rgba(255,63,159,.08);pointer-events:none}
.arrival-photo img{width:100%;height:100%;min-height:640px;object-fit:cover;object-position:center;display:block}
.arrival-copy{border-radius:42px;padding:clamp(1.4rem,3.5vw,3rem);background:rgba(255,255,255,.92);color:var(--pink-dark);box-shadow:0 34px 80px rgba(255,63,159,.22);border:1px solid rgba(255,255,255,.82);backdrop-filter:blur(12px);position:relative;overflow:hidden}
.arrival-copy:before{content:"";position:absolute;right:-120px;top:-120px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(255,63,159,.26),transparent 68%)}
.arrival-copy>*{position:relative;z-index:1}
.arrival-copy h2{font-size:clamp(2.5rem,5.6vw,5.4rem);color:var(--pink-deep);text-transform:uppercase;letter-spacing:-.07em;margin-top:.65rem}
.arrival-copy p{font-size:1.05rem;color:#73405b;text-align:justify;text-justify:inter-word}
.arrival-copy .arrival-lead{font-size:1.18rem;color:#5e163a;font-weight:720}
.arrival-copy .arrival-lead b{color:var(--pink-deep);font-weight:1000}
.arrival-pills{display:flex;flex-wrap:wrap;gap:.55rem;margin:1.15rem 0}
.arrival-pills span{display:inline-flex;padding:.55rem .78rem;border-radius:999px;background:#fff0f7;border:1px solid rgba(255,63,159,.22);color:var(--pink-deep);font-weight:1000;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em}
.arrival-copy blockquote{margin:1.15rem 0 0;padding:1rem 1.1rem;border-left:5px solid var(--pink);background:linear-gradient(135deg,#fff6fb,#ffe5f3);border-radius:18px;color:var(--pink-deep);font-weight:1000;font-size:clamp(1.1rem,2vw,1.45rem);line-height:1.15}
.arrival-copy .tag.white{background:linear-gradient(135deg,var(--pink),var(--pink-2));color:#fff;border-color:transparent}
.arrival-copy .btn.ghost{background:#fff!important;color:var(--pink-deep)!important;border-color:rgba(255,63,159,.25)}
@media (max-width:1100px){.topbar .container.nav{width:min(100% - 24px,1180px)}.brand{min-width:250px}.menu a{padding:.58rem .62rem;font-size:.68rem}}
@media (max-width:980px){.footer-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-bottom{display:grid;text-align:left}.footer-bottom span:last-child{text-align:left}.arrival-wrap{grid-template-columns:1fr}.arrival-photo{min-height:520px}.arrival-photo img{min-height:520px}.menu{flex-wrap:wrap;justify-content:flex-start}.brand{min-width:0}.hero-card .lead,.arrival-copy p{text-align:left}}
@media (max-width:720px){.footer-cards{grid-template-columns:1fr}.footer-card{min-height:auto}.footer-contact-line strong{font-size:1.45rem}.arrival-section{padding:2.4rem 0}.arrival-photo{min-height:440px;border-radius:30px}.arrival-photo img{min-height:440px}.arrival-copy{border-radius:30px;padding:1.35rem}.arrival-pills span{font-size:.75rem}.menu a{font-size:.8rem}.brand{gap:.62rem}.brand-logo{width:50px;height:50px}}

/* Portada: agenda de próximos eventos */
.agenda-home{background:
  radial-gradient(circle at 12% 0%,rgba(255,255,255,.92),transparent 24%),
  radial-gradient(circle at 88% 8%,rgba(255,63,159,.16),transparent 24%),
  linear-gradient(180deg,#fff7fc,#ffe7f3);}
.agenda-title{align-items:flex-start}
.agenda-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.agenda-card{display:grid;grid-template-columns:170px minmax(0,1fr);gap:1rem;align-items:stretch;background:rgba(255,255,255,.94);border:1px solid rgba(255,255,255,.78);border-radius:30px;padding:1rem;box-shadow:var(--shadow);overflow:hidden;position:relative}
.agenda-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 96% 12%,rgba(255,63,159,.13),transparent 32%);pointer-events:none}
.agenda-card>*{position:relative;z-index:1}
.agenda-date{display:grid;place-items:center;text-align:center;border-radius:24px;padding:1rem;background:linear-gradient(135deg,var(--pink),var(--pink-2));color:#fff;box-shadow:0 15px 32px rgba(255,63,159,.23);font-weight:1000;text-transform:uppercase;letter-spacing:.035em;line-height:1.08;min-height:150px}
.agenda-date span{font-size:clamp(1rem,2vw,1.22rem)}
.agenda-poster{margin:0;min-height:230px;border-radius:24px;overflow:hidden;background:#ffe1f1;box-shadow:0 15px 32px rgba(255,63,159,.18);align-self:stretch}
.agenda-poster img{width:100%;height:100%;min-height:230px;object-fit:cover;object-position:center top;display:block}
.agenda-card.has-poster{grid-template-columns:190px minmax(0,1fr);min-height:260px}
.agenda-card.has-poster .agenda-info{justify-content:center;padding:.45rem .35rem}
.agenda-date-line{display:inline-flex;margin:0 0 .45rem!important;padding:.38rem .68rem;border-radius:999px;background:#ffe3f2;color:var(--pink-deep);font-weight:1000;text-transform:uppercase;letter-spacing:.04em;font-size:.82rem}
.agenda-info{padding:.35rem .2rem;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.agenda-info h3{font-size:clamp(1.35rem,2.2vw,1.9rem);margin-bottom:.45rem;color:var(--pink-deep)}
.agenda-info p{margin:.25rem 0}.agenda-info .btn{margin-top:.75rem}
.agenda-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.2rem}
@media (max-width:980px){.footer-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-bottom{display:grid;text-align:left}.footer-bottom span:last-child{text-align:left}.agenda-grid{grid-template-columns:1fr}.agenda-card.has-poster{grid-template-columns:180px minmax(0,1fr)}}
@media (max-width:640px){.agenda-card,.agenda-card.has-poster{grid-template-columns:1fr}.agenda-date{min-height:auto}.agenda-poster{min-height:auto}.agenda-poster img{height:auto;min-height:0;object-fit:contain;background:#ffe1f1}.agenda-actions .btn{width:100%}}

/* FINAL AJUSTES 2026-05-27: todo rosa, columnas iguales y formulario premium */
.arrival-section{
  background:
    radial-gradient(circle at 14% 16%,rgba(255,255,255,.26),transparent 20%),
    radial-gradient(circle at 84% 12%,rgba(255,255,255,.18),transparent 22%),
    linear-gradient(135deg,#ff3f9f 0%,#ff66b8 45%,#ffd4ea 100%)!important;
}
.arrival-section:before{background:
  radial-gradient(circle at 24px 24px,rgba(255,255,255,.24) 0 3px,transparent 4px),
  linear-gradient(90deg,rgba(255,255,255,.08),transparent 38%,rgba(255,255,255,.12));}
.arrival-wrap{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important}
.arrival-photo{min-height:640px!important;background:#ff8bc8!important;box-shadow:0 34px 82px rgba(255,63,159,.28)!important;border-color:rgba(255,255,255,.5)!important}
.arrival-photo:after{box-shadow:inset 0 0 0 1px rgba(255,255,255,.22), inset 0 -120px 120px rgba(255,63,159,.08)!important}
.arrival-photo img{min-height:640px!important;object-fit:cover!important;object-position:center!important}
.arrival-copy{min-height:640px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;box-shadow:0 34px 80px rgba(255,63,159,.22)!important}
.arrival-copy h2{font-size:clamp(2.25rem,4.8vw,4.85rem)!important;color:var(--pink-deep)!important}
.arrival-copy p{color:#79415f!important}
.arrival-copy .arrival-lead{color:#5f1e45!important}
.arrival-copy .arrival-lead b{color:var(--pink-deep)!important}
.arrival-copy blockquote{color:var(--pink-deep)!important;background:linear-gradient(135deg,#fff6fb,#ffe7f4)!important}
.arrival-copy .btn.ghost{color:var(--pink-deep)!important;border-color:rgba(255,63,159,.25)!important}

.hidden{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.contact-hero .bubble{background:linear-gradient(135deg,#fff,#fff2f9);border:1px solid rgba(255,255,255,.9)}
.contact-premium-section{background:
  radial-gradient(circle at 15% 0,rgba(255,255,255,.95),transparent 24%),
  radial-gradient(circle at 85% 8%,rgba(255,63,159,.14),transparent 25%),
  linear-gradient(180deg,#fff7fc,#ffe7f3)!important;}
.contact-premium-grid{display:grid;grid-template-columns:minmax(320px,.85fr) minmax(0,1.15fr);gap:1.1rem;align-items:start}
.contact-info-card,.contract-form-card{border-radius:34px;border:1px solid rgba(255,255,255,.86);background:rgba(255,255,255,.9);box-shadow:var(--shadow);overflow:hidden}
.contact-info-card{position:sticky;top:110px}
.contact-info-image{min-height:520px;background:#ffe4f2;overflow:hidden}
.contact-info-image img{width:100%;height:100%;min-height:520px;object-fit:cover;display:block}
.contact-info-content{padding:1.4rem}.contact-info-content h2{font-size:clamp(1.8rem,3vw,3rem)}
.contract-list{display:grid;gap:.55rem;margin:1rem 0 0;padding:0;list-style:none}.contract-list li{position:relative;padding-left:1.5rem;color:var(--pink-dark);font-weight:800}.contract-list li:before{content:"✦";position:absolute;left:0;color:var(--pink)}
.direct-contact-box{margin-top:1.2rem;padding:1rem;border-radius:22px;background:linear-gradient(135deg,var(--pink),var(--pink-2));color:#fff;display:grid;gap:.15rem}.direct-contact-box small{text-transform:uppercase;font-weight:1000;letter-spacing:.12em}.direct-contact-box strong{font-size:1.85rem;line-height:1}.direct-contact-box span{font-weight:850}
.contract-form-card{padding:clamp(1.1rem,3vw,2rem);display:grid;gap:1.05rem}.form-head h2{margin-top:.8rem;font-size:clamp(2rem,4vw,4rem)}
.contract-form-card fieldset{border:1px solid rgba(255,63,159,.16);border-radius:26px;padding:1rem;background:rgba(255,255,255,.75);display:grid;gap:.85rem}.contract-form-card legend{padding:0 .5rem;color:var(--pink-deep);font-weight:1000;text-transform:uppercase;letter-spacing:.08em;font-size:.82rem}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.checkbox-grid label,.privacy-line{display:flex;align-items:center;gap:.55rem;padding:.78rem .85rem;border:1px solid rgba(255,63,159,.16);background:#fff;border-radius:16px;color:var(--pink-dark);font-weight:850}.checkbox-grid input,.privacy-line input{width:auto;accent-color:var(--pink)}
.contract-submit{width:100%;font-size:1.05rem;padding:1.1rem 1.4rem;text-transform:uppercase;letter-spacing:.06em}
@media (max-width:980px){.arrival-wrap,.contact-premium-grid{grid-template-columns:1fr!important}.arrival-copy,.arrival-photo,.arrival-photo img{min-height:auto!important}.contact-info-card{position:static}.contact-info-image,.contact-info-image img{min-height:420px}}
@media (max-width:720px){.form-grid,.checkbox-grid{grid-template-columns:1fr}.contract-form-card fieldset{padding:.85rem}.contact-info-content{padding:1.05rem}.arrival-copy p{text-align:left!important}.hero-card .lead{text-align:left!important}}


/* Redes sociales visibles */
.social-header{display:flex;align-items:center;gap:.35rem;flex:0 0 auto}
.social-header a{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:999px;background:linear-gradient(135deg,var(--pink),var(--pink-2));color:#fff;font-weight:1000;font-size:.72rem;letter-spacing:.06em;box-shadow:0 10px 22px rgba(255,63,159,.22);border:1px solid rgba(255,255,255,.82)}
.social-header a:hover{transform:translateY(-2px);box-shadow:0 16px 28px rgba(255,63,159,.30)}
.social-links{display:flex;gap:.55rem;flex-wrap:wrap;align-items:center}
.social-links a{display:inline-flex;align-items:center;justify-content:center;padding:.62rem .85rem;border-radius:999px;background:rgba(255,63,159,.12);border:1px solid rgba(255,63,159,.28);color:#ff58ad!important;font-weight:1000;font-size:.82rem;letter-spacing:.04em}
.social-links a:hover{background:var(--pink);color:#fff!important;border-color:var(--pink)}
.footer-socials{margin:.85rem 0 .15rem}.footer-socials a{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.16);color:#fff!important}
.contact-social-box{margin-top:.9rem;padding:1rem;border-radius:22px;background:#fff;border:1px solid rgba(255,63,159,.18);box-shadow:0 12px 28px rgba(255,63,159,.08)}
.contact-social-box small{display:block;text-transform:uppercase;font-weight:1000;letter-spacing:.12em;color:var(--pink-deep);margin-bottom:.65rem}
.topbar .container.nav{width:min(1320px,calc(100% - 30px));max-width:1320px}
.brand{min-width:270px}.menu{gap:.26rem}.menu a{padding:.6rem .68rem;font-size:.7rem}.social-header a{width:34px;height:34px;font-size:.68rem}
@media (max-width:1180px){.brand{min-width:235px}.brand span{font-size:1rem}.brand small{font-size:.5rem;max-width:210px}.menu a{padding:.56rem .58rem;font-size:.66rem}.social-header a{width:32px;height:32px}}
@media (max-width:980px){.social-header{margin-left:auto}.menu{flex-wrap:wrap;justify-content:flex-start}.topbar .container.nav{width:min(100% - 26px,1240px)}}
@media (max-width:720px){.social-header{order:3}.social-header a{width:36px;height:36px}.menu.open + .social-header{display:flex}}


/* Ajuste final pedido: logos reales RRSS + texto principal ocupando el div */
.social-header a svg{width:19px;height:19px;fill:currentColor;display:block}
.social-header a{font-size:0!important}
.social-links a{gap:.45rem}
.social-links a svg{width:18px;height:18px;fill:currentColor;display:block;flex:0 0 auto}
.social-btn svg{width:18px;height:18px;fill:currentColor;display:block}
.hero-copy{width:100%!important;max-width:100%!important;text-align:justify;text-align-last:left;line-height:1.72;word-spacing:.08em}
.hero-card{display:flex;flex-direction:column;justify-content:center}
.nav{width:min(1400px,calc(100% - 32px))}
.menu{flex-wrap:nowrap!important;white-space:nowrap}
@media (min-width:721px){.menu a{font-size:.76rem!important;padding:.62rem .7rem!important}.brand-logo{width:50px!important;height:50px!important}.brand span{font-size:1.06rem!important}.brand small{font-size:.52rem!important}}
@media (max-width:720px){.hero-copy{text-align:left;word-spacing:normal}.menu{flex-wrap:wrap!important;white-space:normal}}


/* Ajuste texto hero solicitado */
.hero-copy-second{margin-top:.55rem}
.hero-card .hero-copy{font-size:1.02rem}
@media (max-width:720px){.hero-copy-second{margin-top:.5rem}.hero-card .hero-copy{font-size:1rem}}

/* FIX 2026-05-27: menú móvil tipo sandwich, compacto y con redes dentro */
.menu-toggle{
  align-items:center;
  gap:.58rem;
  min-height:46px;
  padding:.72rem 1.05rem!important;
  border-radius:999px;
  background:linear-gradient(180deg,#fff,#fff3fa)!important;
  border:1px solid rgba(255,63,159,.32)!important;
  color:var(--pink-deep)!important;
  font-weight:1000;
  letter-spacing:.02em;
  box-shadow:0 12px 28px rgba(255,63,159,.14)!important;
}
.hamburger{display:inline-grid;gap:4px;width:18px}
.hamburger i{display:block;height:2px;border-radius:999px;background:currentColor;transition:transform .18s ease,opacity .18s ease}
.menu-toggle[aria-expanded="true"] .hamburger i:nth-child(1){transform:translateY(6px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] .hamburger i:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] .hamburger i:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.menu-social{display:flex;align-items:center;gap:.35rem;flex:0 0 auto}
.menu-social a{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:34px!important;height:34px!important;padding:0!important;border-radius:999px!important;background:linear-gradient(135deg,var(--pink),var(--pink-2))!important;color:#fff!important;border:1px solid rgba(255,255,255,.82)!important;box-shadow:0 10px 22px rgba(255,63,159,.22)!important;font-size:0!important;letter-spacing:0!important;text-transform:none!important}
.menu-social a:before,.menu-social a:after{display:none!important;content:none!important}
.menu-social a svg{width:18px;height:18px;fill:currentColor;display:block;flex:0 0 auto}
.menu-social a span{display:none}
.menu-social a:hover{transform:translateY(-2px);box-shadow:0 16px 28px rgba(255,63,159,.30)!important}

@media (min-width:721px){
  .menu{align-items:center!important;gap:.3rem!important;flex-wrap:nowrap!important;white-space:nowrap!important}
  .menu-social{margin-left:.15rem;padding-left:.25rem;border-left:1px solid rgba(255,63,159,.18)}
  .social-header{display:none!important}
}

@media (max-width:720px){
  body.menu-open{overflow:hidden}
  .topbar{padding:8px 0!important;background:rgba(255,248,252,.94)!important;backdrop-filter:blur(18px)!important}
  .topbar .container.nav,.nav{
    width:min(100% - 18px,520px)!important;
    max-width:520px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:.65rem!important;
    margin-inline:auto!important;
    position:relative!important;
  }
  .brand{min-width:0!important;gap:.55rem!important;max-width:100%!important}
  .brand-logo{width:46px!important;height:46px!important;border-width:2px!important;box-shadow:0 7px 16px rgba(255,63,159,.22),0 0 0 5px rgba(255,63,159,.08)!important}
  .brand span{font-size:1rem!important;line-height:.92!important;min-width:0!important}
  .brand small{display:block!important;font-size:.45rem!important;letter-spacing:.08em!important;max-width:172px!important;line-height:1.08!important;margin-top:.28rem!important}
  .menu-toggle{display:inline-flex!important;justify-self:end!important;z-index:1002!important;min-height:44px!important;padding:.68rem .9rem!important}
  .menu-label{font-size:.9rem}
  .social-header{display:none!important}
  .menu{
    position:fixed!important;
    z-index:1001!important;
    top:72px!important;
    left:12px!important;
    right:12px!important;
    width:auto!important;
    max-width:520px!important;
    margin-inline:auto!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:.55rem!important;
    padding:.9rem!important;
    border-radius:26px!important;
    background:rgba(255,255,255,.98)!important;
    border:1px solid rgba(255,63,159,.22)!important;
    box-shadow:0 26px 70px rgba(133,18,76,.22),0 0 0 999px rgba(255,235,247,.50)!important;
    backdrop-filter:blur(18px)!important;
    white-space:normal!important;
    transform:translateY(-12px) scale(.985)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    max-height:calc(100vh - 92px)!important;
    overflow:auto!important;
  }
  .menu.open{
    transform:translateY(0) scale(1)!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
  .menu a{
    min-height:46px!important;
    width:100%!important;
    justify-content:center!important;
    padding:.78rem .7rem!important;
    border-radius:18px!important;
    font-size:.76rem!important;
    letter-spacing:.045em!important;
    background:linear-gradient(180deg,#fff,#fff6fb)!important;
    box-shadow:0 8px 18px rgba(255,63,159,.08), inset 0 1px 0 rgba(255,255,255,.9)!important;
  }
  .menu a.active{
    background:linear-gradient(135deg,#ff2f98,#ff75c0)!important;
    color:#fff!important;
    box-shadow:0 12px 28px rgba(255,63,159,.26),0 0 0 5px rgba(255,63,159,.09)!important;
  }
  .menu a:nth-of-type(7){grid-column:1/-1}
  .menu-social{
    grid-column:1/-1!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:.6rem!important;
    margin-top:.25rem!important;
    padding-top:.78rem!important;
    border-top:1px solid rgba(255,63,159,.16)!important;
  }
  .menu-social a{
    width:100%!important;
    height:46px!important;
    font-size:.8rem!important;
    gap:.45rem!important;
    text-transform:uppercase!important;
    letter-spacing:.06em!important;
    font-weight:1000!important;
    border-radius:18px!important;
  }
  .menu-social a span{display:inline!important}
  .hero{padding-top:.85rem!important}
  .hero-main-photo{min-height:360px!important;border-radius:28px!important}
  .hero-main-photo img{min-height:360px!important;object-position:center top!important}
  .hero-card{border-radius:28px!important;padding:1.25rem!important}
}

@media (max-width:390px){
  .menu-label{display:none}
  .menu-toggle{width:44px!important;height:44px!important;padding:0!important;justify-content:center!important}
  .brand small{max-width:142px!important;font-size:.4rem!important}
  .menu{grid-template-columns:1fr!important;top:68px!important}
  .menu a:nth-of-type(7){grid-column:auto}
  .menu-social{grid-template-columns:1fr!important}
}

/* BIO MARI TRINI 2026-05-27: galería biográfica debajo de la biografía */
.bio-gallery-section{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 8%,rgba(255,255,255,.96),transparent 24%),
    radial-gradient(circle at 88% 18%,rgba(255,63,159,.18),transparent 28%),
    linear-gradient(180deg,#fff7fc 0%,#ffe3f2 48%,#fff8fc 100%)!important;
}
.bio-gallery-section:before{
  content:"";
  position:absolute;
  inset:-8% -6%;
  background:url('/assets/img/bg-abanico-topos-difuminado.webp') center / cover no-repeat;
  opacity:.20;
  filter:blur(10px) saturate(1.1);
  transform:scale(1.04);
  pointer-events:none;
}
.bio-gallery-section:after{
  content:"";
  position:absolute;
  left:8%;
  bottom:7%;
  width:220px;
  height:220px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(255,63,159,.22),transparent 68%);
  pointer-events:none;
}
.bio-gallery-section .container{position:relative;z-index:1}
.bio-gallery-title{align-items:flex-start;margin-bottom:1.6rem}
.bio-gallery-title h2{max-width:780px;font-size:clamp(2.2rem,4.8vw,4.9rem);text-transform:uppercase;color:var(--pink-deep)}
.bio-gallery-title p{max-width:430px;color:#78405e;font-weight:760}
.bio-gallery-mosaic{
  display:grid;
  grid-template-columns:1.12fr .88fr;
  grid-template-rows:310px 310px;
  gap:1rem;
}
.bio-shot{
  margin:0;
  position:relative;
  overflow:hidden;
  border-radius:34px;
  min-height:0;
  background:#ffd8ec;
  border:1px solid rgba(255,255,255,.86);
  box-shadow:0 28px 72px rgba(177,30,101,.20);
  isolation:isolate;
}
.bio-shot:before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(56,0,30,.03) 35%,rgba(76,0,44,.72) 100%);
  z-index:1;
  pointer-events:none;
}
.bio-shot:after{
  content:"";
  position:absolute;
  inset:10px;
  border-radius:26px;
  border:1px solid rgba(255,255,255,.46);
  z-index:2;
  pointer-events:none;
}
.bio-shot img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transform:scale(1.01);
  transition:transform .6s ease, filter .6s ease;
}
.bio-shot:hover img{transform:scale(1.06);filter:saturate(1.08)}
.bio-shot-main{grid-row:1 / span 2;min-height:620px}
.bio-shot-main img{object-position:center top}
/* Ajuste de encuadre para que en las tarjetas derechas no se corte la cabeza */
.bio-shot-stage img{object-position:center 12%}
.bio-shot-brasil img{object-position:center 18%}
.bio-shot figcaption{
  position:absolute;
  z-index:3;
  left:clamp(1rem,2vw,1.35rem);
  right:clamp(1rem,2vw,1.35rem);
  bottom:clamp(1rem,2vw,1.35rem);
  display:grid;
  gap:.25rem;
  color:#fff;
  text-shadow:0 2px 14px rgba(86,0,43,.35);
}
.bio-shot figcaption span{
  display:inline-flex;
  width:max-content;
  padding:.35rem .55rem;
  border-radius:999px;
  background:rgba(255,63,159,.92);
  color:#fff;
  font-size:.72rem;
  font-weight:1000;
  letter-spacing:.14em;
}
.bio-shot figcaption strong{
  font-size:clamp(1.45rem,2.4vw,2.25rem);
  line-height:.94;
  letter-spacing:-.055em;
  text-transform:uppercase;
}
.bio-shot figcaption small{
  font-size:.94rem;
  line-height:1.35;
  max-width:360px;
  color:rgba(255,255,255,.9);
  font-weight:760;
}
@media (max-width:980px){
  .bio-gallery-mosaic{grid-template-columns:1fr;grid-template-rows:auto;gap:.85rem}
  .bio-shot,.bio-shot-main{min-height:520px;grid-row:auto}
  .bio-gallery-title{display:block}.bio-gallery-title p{max-width:100%;margin-top:.6rem}
}
@media (max-width:720px){
  .bio-gallery-section{padding:2.7rem 0!important}
  .bio-gallery-mosaic{gap:.75rem}
  .bio-shot,.bio-shot-main{min-height:430px;border-radius:28px}
  .bio-shot:after{inset:8px;border-radius:22px}
  .bio-shot figcaption{left:1rem;right:1rem;bottom:1rem}
  .bio-shot figcaption strong{font-size:1.45rem}
  .bio-shot figcaption small{font-size:.86rem}
}

/* Ajuste cabecera Mari Trini: logo + título limpio */
.bio-page-hero{padding:2.2rem 0 1.2rem;background:linear-gradient(180deg,rgba(255,246,251,.95),rgba(255,230,243,.82));position:relative;overflow:hidden}
.bio-page-hero:before{content:"";position:absolute;inset:auto -10% -45px -10%;height:120px;background:linear-gradient(90deg,var(--pink),#ff77bf);opacity:.88;pointer-events:none}
.bio-page-hero .container{position:relative;z-index:1}
.bio-hero-bubble{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:1.35rem;background:rgba(255,255,255,.94);box-shadow:0 24px 70px rgba(255,63,159,.16);border:1px solid rgba(255,255,255,.9);overflow:hidden;position:relative}
.bio-hero-bubble:before{content:"";position:absolute;right:-120px;top:-120px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(255,63,159,.18),transparent 68%);pointer-events:none}
.bio-hero-logo{width:136px;height:136px;border-radius:999px;padding:8px;background:linear-gradient(135deg,#fff,#ffd7ea);box-shadow:0 18px 42px rgba(255,63,159,.28);position:relative;z-index:1}
.bio-hero-logo img{width:100%;height:100%;object-fit:cover;border-radius:999px;display:block;box-shadow:inset 0 0 0 1px rgba(255,255,255,.7)}
.bio-hero-copy{position:relative;z-index:1;min-width:0}.bio-hero-copy h1{font-size:clamp(3.2rem,8vw,7.2rem);letter-spacing:-.075em;text-transform:uppercase;margin:.3rem 0 .25rem;color:var(--pink-deep);line-height:.86}.bio-hero-copy .lead{font-size:clamp(1.08rem,2.2vw,1.6rem);font-weight:850;color:#7d3158;margin:0;max-width:900px}
@media (max-width:720px){.bio-page-hero{padding:1.3rem 0 .9rem}.bio-hero-bubble{grid-template-columns:1fr;text-align:center;justify-items:center;padding:1.45rem 1.1rem!important;border-radius:30px!important;gap:.9rem}.bio-hero-logo{width:112px;height:112px}.bio-hero-copy h1{font-size:clamp(3rem,18vw,4.7rem);line-height:.9}.bio-hero-copy .lead{font-size:1rem;line-height:1.35}.bio-hero-copy .kicker{justify-content:center}}


/* Ajuste solicitado: menos aire entre la cabecera de Mari Trini y la biografía + separadores de abanico */
.bio-page-hero{
  padding:1.35rem 0 .15rem!important;
}
.bio-page-hero:before{
  height:64px!important;
  bottom:-18px!important;
  opacity:.72!important;
}
.bio-page-hero + .arrival-section{
  padding-top:clamp(1.15rem,2.4vw,2rem)!important;
}
.bio-page-hero + .arrival-section .arrival-wrap{
  margin-top:0!important;
}
.fan-divider{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.48rem;
  margin:.72rem 0 .78rem;
  opacity:.92;
}
.fan-divider:before,
.fan-divider:after{
  content:"";
  height:1px;
  flex:1 1 auto;
  max-width:150px;
  background:linear-gradient(90deg,transparent,rgba(255,63,159,.56),rgba(177,30,101,.22));
}
.fan-divider:after{
  background:linear-gradient(90deg,rgba(177,30,101,.22),rgba(255,63,159,.56),transparent);
}
.fan-divider i{
  width:28px;
  height:28px;
  flex:0 0 28px;
  display:block;
  background:url('/assets/img/icono-abanico-separador.webp') center/contain no-repeat;
  filter:drop-shadow(0 5px 10px rgba(177,30,101,.18));
}
.fan-divider i:nth-child(2){transform:translateY(-2px) scale(1.05)}
.fan-divider i:nth-child(3){transform:rotate(7deg)}
.fan-divider i:nth-child(1){transform:rotate(-7deg)}
.arrival-copy .fan-divider + p{margin-top:0!important}
.arrival-copy .arrival-lead + .fan-divider{margin-top:.9rem}
@media (max-width:720px){
  .bio-page-hero{padding:1rem 0 0!important}
  .bio-page-hero + .arrival-section{padding-top:.9rem!important}
  .fan-divider{margin:.65rem 0;gap:.35rem}
  .fan-divider:before,.fan-divider:after{max-width:92px}
  .fan-divider i{width:24px;height:24px;flex-basis:24px}
}

/* Ajustes panel privado: menú limpio y subida de material */
.admin-sidebar nav a:nth-last-child(n+1){font-size:.96rem}
.admin-help-card p{margin:.25rem 0 .75rem}
.admin-help-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.8rem}
.upload-admin-card h3,.admin-help-card h3{margin:.1rem 0 .25rem;color:var(--pink-deep);font-size:1.35rem}
.upload-zone ul{margin:.7rem 0 0;padding-left:1.1rem;display:grid;gap:.35rem}
.upload-zone li{line-height:1.35}
.small-code{display:inline-block;max-width:360px;vertical-align:middle;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;padding:.28rem .45rem;border-radius:9px;font-size:.75rem}
.compact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-bottom:.7rem}
.compact-grid .span-2{grid-column:1/-1}
.photo-bulk-zone{gap:1rem}
.admin-actions .btn.small{padding:.55rem .8rem;font-size:.86rem}
@media (max-width:720px){.compact-grid{grid-template-columns:1fr}.compact-grid .span-2{grid-column:auto}.small-code{max-width:220px}}


/* FIX: tarjetas de Noticias / Agenda con carteles verticales */
@media (max-width:720px){
  .items-grid{grid-template-columns:1fr;justify-content:stretch}
  .thumb.has-img{height:auto;min-height:0;aspect-ratio:3/4;padding:.6rem}
  .item-card-noticias .thumb.has-img,.item-card-agenda .thumb.has-img,.item-card-eventos .thumb.has-img,.item-card-carteles .thumb.has-img{height:auto;aspect-ratio:3/4}
  .item-body h3{font-size:1.45rem}
}


/* FIX: Agenda admin con cartel visible y formulario más claro */
.admin-table-events{min-width:980px}
.admin-table-events th:first-child,.admin-table-events td:first-child{width:58px}
.admin-table-events th:nth-child(2),.admin-table-events td:nth-child(2){width:112px}
.admin-list-thumb{margin:0;width:82px;min-height:112px;border-radius:16px;padding:.28rem;background:linear-gradient(180deg,#fff,#ffe4f1);border:1px solid #f4c7dc;box-shadow:0 10px 22px rgba(177,30,101,.12);display:grid;place-items:center;overflow:hidden}
.admin-list-thumb img{width:100%;height:100%;max-height:118px;object-fit:contain;border-radius:12px;display:block;background:#fff}
.admin-status{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:.34rem .62rem;font-size:.78rem;font-weight:950;background:#ffe8f4;color:#a71968}
.admin-status-published{background:#e8fff3;color:#087447}.admin-status-draft{background:#fff5d9;color:#8a5b00}.admin-status-archived{background:#f3f3f6;color:#696877}
.admin-badge.yes{display:inline-flex;border-radius:999px;padding:.34rem .62rem;background:#fff0fa;color:#c0247c;font-weight:950;font-size:.78rem}
.media-picker-poster_id{background:linear-gradient(135deg,#fff,#fff2f8);border-color:#f5bfd8;padding:1.05rem}.media-picker-poster_id>label{font-size:1.05rem;color:var(--pink-deep)}
.media-preview.has-image{margin-top:.85rem}.media-preview-card{display:grid;grid-template-columns:150px minmax(0,1fr);gap:1rem;align-items:center;padding:.85rem;border-radius:22px;background:#fff;border:1px solid #f3cfe0;box-shadow:0 16px 34px rgba(177,30,101,.10)}
.media-preview-card img{width:150px;height:210px;max-width:none;object-fit:contain;background:#fff;border-radius:16px;border:1px solid #eed6e3;box-shadow:0 10px 24px rgba(95,0,49,.10)}
.media-preview-card strong{display:block;font-size:1.05rem;color:var(--pink-deep);margin-bottom:.18rem}.media-preview-card span{display:block;font-weight:950;color:#0b7b52;margin-bottom:.2rem}.media-preview-card small{display:block;color:#80516a;font-weight:750;line-height:1.35}
.notice.soft{background:#fff;border:1px dashed #f0b8d4;color:#874065;border-radius:16px;padding:.8rem}
@media (max-width:720px){.admin-table-events{min-width:820px}.media-preview-card{grid-template-columns:1fr}.media-preview-card img{width:100%;height:auto;max-height:360px}}


/* SHOW 2026-05-27: nueva pestaña para explicar el espectáculo */
.show-hero{padding:clamp(1.9rem,4vw,4.2rem) 0 2.6rem;background:
  radial-gradient(circle at 12% 10%,rgba(255,255,255,.95),transparent 24%),
  radial-gradient(circle at 88% 8%,rgba(255,63,159,.18),transparent 28%),
  linear-gradient(180deg,#fff8fc,#ffe5f3);}
.show-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);gap:1.25rem;align-items:center}
.show-hero-copy{border-radius:38px;padding:clamp(1.45rem,3.4vw,3.2rem);background:rgba(255,255,255,.88);border:1px solid rgba(255,255,255,.82);box-shadow:var(--shadow);position:relative;overflow:hidden}
.show-hero-copy:before{content:"";position:absolute;right:-80px;top:-80px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(255,63,159,.22),transparent 65%);pointer-events:none}
.show-hero-copy h1{max-width:850px;font-size:clamp(3.1rem,7vw,6.4rem)}
.show-hero-copy .lead{font-size:clamp(1.02rem,1.5vw,1.18rem);font-weight:650;color:#78405e;max-width:760px}
.show-hero-points{display:flex;gap:.55rem;flex-wrap:wrap;margin:1.2rem 0 .3rem}
.show-hero-points span{display:inline-flex;padding:.55rem .78rem;border-radius:999px;background:#fff0f8;border:1px solid rgba(255,63,159,.24);color:var(--pink-deep);font-weight:1000;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}
.show-hero-image{margin:0;border-radius:38px;overflow:hidden;box-shadow:var(--shadow-strong);border:1px solid rgba(255,255,255,.78);background:#ffb1d7;min-height:430px}
.show-hero-image img{width:100%;height:100%;min-height:430px;object-fit:cover;object-position:center}
.show-explain-section{background:linear-gradient(180deg,#fff,#fff0f8)}
.show-section-title p{max-width:520px;font-weight:700;color:#7d4663}
.show-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.show-card{padding:1.2rem;border-radius:28px;background:rgba(255,255,255,.92);border:1px solid rgba(255,63,159,.16);box-shadow:0 18px 44px rgba(177,30,101,.12);position:relative;overflow:hidden}
.show-card:after{content:"";position:absolute;right:-32px;bottom:-36px;width:115px;height:115px;border-radius:50%;background:radial-gradient(circle,rgba(255,63,159,.12),transparent 68%)}
.show-card span{display:inline-flex;width:max-content;padding:.38rem .58rem;border-radius:999px;background:linear-gradient(135deg,var(--pink),var(--pink-2));color:#fff;font-size:.72rem;font-weight:1000;letter-spacing:.12em;margin-bottom:.78rem}
.show-card h3{font-size:clamp(1.28rem,2vw,1.72rem);color:var(--pink-deep);margin-bottom:.55rem}
.show-card p{font-weight:650;color:#84506a}
.show-format-section{background:
  radial-gradient(circle at 12% 0%,rgba(255,255,255,.7),transparent 24%),
  linear-gradient(135deg,#ff3f9f 0%,#ff7bc4 52%,#ffe0f0 100%)}
.show-format-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:1.2rem;align-items:stretch}
.show-panel{border-radius:36px;overflow:hidden;border:1px solid rgba(255,255,255,.62);box-shadow:0 34px 82px rgba(177,30,101,.24)}
.show-panel-photo{background:#ff9ed0;min-height:560px}
.show-panel-photo img{width:100%;height:100%;min-height:560px;object-fit:cover;object-position:center top}
.show-panel-copy{padding:clamp(1.45rem,3vw,2.6rem);background:rgba(255,255,255,.9);display:flex;flex-direction:column;justify-content:center}
.show-panel-copy h2{font-size:clamp(2.4rem,5vw,4.9rem)}
.show-panel-copy p{font-size:1.03rem;color:#74415d;font-weight:650}
.show-format-list{list-style:none;padding:0;margin:1rem 0 0;display:grid;gap:.72rem}
.show-format-list li{display:grid;grid-template-columns:170px minmax(0,1fr);gap:.75rem;align-items:start;padding:.85rem;border-radius:20px;background:#fff7fc;border:1px solid rgba(255,63,159,.16)}
.show-format-list b{color:var(--pink-deep);font-weight:1000}.show-format-list span{color:#80506a;line-height:1.45;font-weight:650}

/* Portada agenda: texto más visual */
.agenda-title{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,520px);align-items:start}
.agenda-intro-box{padding:1.05rem 1.15rem;border-radius:26px;background:rgba(255,255,255,.76);border:1px solid rgba(255,255,255,.82);box-shadow:0 20px 48px rgba(177,30,101,.10);position:relative;overflow:hidden}
.agenda-intro-box:before{content:"";position:absolute;inset:auto -40px -55px auto;width:130px;height:130px;border-radius:50%;background:radial-gradient(circle,rgba(255,63,159,.18),transparent 70%)}
.agenda-intro-box strong{display:block;color:var(--pink-deep);font-size:clamp(1.05rem,1.7vw,1.45rem);line-height:1.12;margin-bottom:.35rem;letter-spacing:-.03em}
.agenda-intro-box span{display:block;color:#7d4663;font-weight:700;line-height:1.55}
.agenda-mini-pills{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.75rem}
.agenda-mini-pills b{display:inline-flex;padding:.38rem .58rem;border-radius:999px;background:#ffe2f1;color:var(--pink-deep);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}
@media (max-width:980px){.show-hero-grid,.show-format-grid{grid-template-columns:1fr}.show-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.agenda-title{grid-template-columns:1fr}.agenda-intro-box{margin-top:.75rem}.show-hero-image,.show-hero-image img{min-height:360px}.show-panel-photo,.show-panel-photo img{min-height:520px}}
@media (max-width:640px){.show-card-grid{grid-template-columns:1fr}.show-format-list li{grid-template-columns:1fr}.show-hero-copy{border-radius:30px}.show-hero-image{border-radius:30px}.show-hero-image,.show-hero-image img{min-height:300px}.show-panel-photo,.show-panel-photo img{min-height:430px}.agenda-intro-box{border-radius:22px}.show-hero-points span{font-size:.72rem}}


/* FIX contacto: formulario más limpio, menos campos y formato fuera del formulario */
.contact-simple-section{
  padding-top:clamp(2.4rem,4vw,4.5rem)!important;
}
.contact-simple-grid{
  display:grid;
  grid-template-columns:minmax(280px,.86fr) minmax(0,1.14fr);
  gap:clamp(1rem,2.4vw,1.7rem);
  align-items:start;
}
.contact-show-card,
.contact-simple-form{
  border-radius:36px;
  border:1px solid rgba(255,255,255,.9);
  background:rgba(255,255,255,.92);
  box-shadow:0 30px 90px rgba(177,30,101,.16);
  overflow:hidden;
}
.contact-show-card{
  position:sticky;
  top:96px;
}
.contact-show-image{
  height:clamp(360px,54vw,620px);
  background:#ffdbed;
  overflow:hidden;
}
.contact-show-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  display:block;
}
.contact-show-content{
  padding:clamp(1.15rem,2.4vw,1.8rem);
}
.contact-show-content h2{
  margin:.65rem 0 .6rem;
  font-size:clamp(1.9rem,3.4vw,3.4rem);
  line-height:.95;
  letter-spacing:-.06em;
  color:var(--pink-deep);
}
.contact-show-content p{
  color:#78405e;
  font-weight:720;
}
.contact-format-pills{
  display:flex;
  flex-wrap:wrap;
  gap:.55rem;
  margin:1rem 0 1.1rem;
}
.contact-format-pills span{
  display:inline-flex;
  align-items:center;
  gap:.35rem;
  padding:.55rem .78rem;
  border-radius:999px;
  background:#fff1f8;
  color:var(--pink-deep);
  border:1px solid rgba(255,63,159,.18);
  font-weight:950;
  font-size:.86rem;
}
.contact-format-pills span:before{
  content:"✦";
  color:var(--pink);
}
.contact-simple-form{
  padding:clamp(1.1rem,2.4vw,2rem);
}
.contact-simple-form .form-head{
  padding:clamp(.4rem,1vw,.8rem) .2rem .35rem;
}
.contact-simple-form .form-head h2{
  margin:.65rem 0 .45rem;
  font-size:clamp(2.1rem,4.8vw,4.8rem);
  line-height:.9;
  letter-spacing:-.075em;
}
.contact-simple-form .form-head p{
  max-width:560px;
  font-weight:760;
  color:#7d3f61;
}
.simple-form-panel{
  margin-top:1rem;
  padding:clamp(1rem,2vw,1.35rem);
  border-radius:28px;
  border:1px solid rgba(255,63,159,.16);
  background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,244,250,.88));
}
.contact-simple-form .form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.85rem;
}
.contact-simple-form .field.wide{
  grid-column:1 / -1;
}
.contact-simple-form textarea{
  min-height:150px;
}
.privacy-line.compact{
  margin:.85rem 0;
  padding:.72rem .82rem;
  font-size:.92rem;
  background:#fff;
}
.contact-simple-form .contract-submit{
  margin-top:.2rem;
  width:100%;
  border-radius:999px;
  font-size:1.02rem;
}
@media (max-width:1100px){
  .contact-simple-grid{
    grid-template-columns:1fr;
  }
  .contact-show-card{
    position:static;
    display:grid;
    grid-template-columns:minmax(240px,.8fr) 1fr;
  }
  .contact-show-image{
    height:auto;
    min-height:360px;
  }
}
@media (max-width:720px){
  .contact-simple-section{
    padding-top:1.4rem!important;
  }
  .contact-show-card{
    display:block;
    border-radius:28px;
  }
  .contact-show-image{
    height:360px;
    min-height:0;
  }
  .contact-simple-form{
    border-radius:28px;
  }
  .contact-simple-form .form-grid{
    grid-template-columns:1fr;
  }
  .simple-form-panel{
    padding:.9rem;
    border-radius:22px;
  }
  .contact-simple-form .form-head h2{
    font-size:clamp(2rem,13vw,3.4rem);
  }
}
