:root{--dark:#151212;--dark2:#23191b;--wine:#602432;--gold:#d5ae68;--ivory:#f7f1e8;--ink:#272022}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:var(--ivory);color:var(--ink);font-family:Montserrat,Arial,sans-serif;line-height:1.7}a{color:inherit;text-decoration:none}button{font:inherit}.container{width:min(1140px,90%);margin:auto}.header{position:fixed;top:0;left:0;width:100%;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:16px 5%;background:rgba(17,14,15,.92);border-bottom:1px solid rgba(213,174,104,.25);backdrop-filter:blur(14px);transition:padding .3s}.header.scrolled{padding-top:10px;padding-bottom:10px}.brand{color:var(--gold);display:flex;flex-direction:column;line-height:1.3;letter-spacing:2px}.brand-top{font-family:'Cormorant Garamond',Georgia,serif;font-weight:700;font-size:23px}.brand-bottom{font-size:9px;letter-spacing:4px;color:#f1e4c9}.header nav{display:flex;gap:24px}.header nav a{color:#f2e9de;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:1px;transition:color .2s}.header nav a:hover,.header nav a:focus-visible{color:var(--gold)}.menu-toggle{display:none}.hero{min-height:780px;min-height:100svh;position:relative;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;background:radial-gradient(ellipse at 50% 40%,#65313b 0%,#29191d 44%,#110f10 82%);color:#fff;padding:145px 20px 110px}.hero:before,.hero:after{content:"";position:absolute;border:1px solid rgba(213,174,104,.23);width:75vw;height:75vw;max-width:850px;max-height:850px;border-radius:50%;pointer-events:none}.hero:after{width:60vw;height:60vw;max-width:690px;max-height:690px}.hero-pattern{position:absolute;inset:20px;border:1px solid rgba(213,174,104,.24);pointer-events:none}.hero-pattern:after{content:"";position:absolute;inset:10px;border:1px solid rgba(213,174,104,.1)}.hero-inner{position:relative;z-index:1;max-width:950px}.eyebrow,.kicker{font-size:11px;font-weight:700;letter-spacing:4px;color:var(--gold);text-transform:uppercase}.ornament{color:var(--gold);margin:25px auto;font-size:12px;display:flex;align-items:center;justify-content:center;gap:20px}.ornament span{height:1px;width:110px;background:var(--gold)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;line-height:1.08}h1{font-weight:500;letter-spacing:4px;margin-bottom:10px}h1 span{display:block;font-size:clamp(54px,9vw,120px)}h1 strong{display:block;font-weight:600;color:var(--gold);font-size:clamp(58px,10vw,137px)}.hero-subtitle{font-size:clamp(13px,2vw,20px);letter-spacing:8px;font-weight:600;margin:10px 0 30px}.hero-lead{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(25px,3vw,36px);margin-bottom:8px}.hero-copy{font-size:13px;color:#e6d8d5;margin-bottom:35px}.button{display:inline-flex;gap:20px;align-items:center;justify-content:center;padding:16px 27px;background:var(--gold);color:#201718;font-size:11px;letter-spacing:1.5px;font-weight:800;transition:transform .25s,background .25s}.button:hover{transform:translateY(-4px);background:#ebc789}.button span{font-size:20px}.hero-bottom{position:absolute;bottom:40px;z-index:1;font-size:10px;letter-spacing:3px;color:#e9d5ad}.hero-bottom span{padding:0 16px;color:var(--gold)}.section{padding:115px 0}.two-col{display:grid;grid-template-columns:1.05fr .95fr;gap:85px;align-items:center}h2{font-size:clamp(42px,5vw,72px);font-weight:600;margin:12px 0 25px}h2 em{color:#9b683c;font-weight:500}.section-copy p:not(.kicker){font-size:14px;color:#554b48}.gold-line{width:75px;height:2px;background:var(--gold);margin-bottom:28px}.art-panel{background:linear-gradient(140deg,#2d2021,#6a2e3a);padding:26px;min-height:480px;box-shadow:25px 25px 0 #e5d7c4}.art-frame{height:100%;min-height:428px;border:1px solid rgba(213,174,104,.6);position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;color:var(--gold);overflow:hidden}.art-frame svg{position:relative;z-index:1;width:75%;max-width:330px}.art-sun{position:absolute;width:250px;height:250px;background:radial-gradient(circle,#a16e46 0%,transparent 70%);opacity:.3}.art-caption{font-size:11px;letter-spacing:4px;margin-top:-15px}.services{background:#171314;color:var(--ivory)}.center{text-align:center;max-width:850px;margin:0 auto}.center>p:not(.kicker){font-size:14px;line-height:1.9}.services h2 em,.repertoire h2 em,.booking h2 em{color:var(--gold)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:55px}.service-card{min-height:265px;border:1px solid #51433a;background:linear-gradient(145deg,#292023,#1c1819);padding:28px;position:relative;transition:transform .3s,border-color .3s,background .3s}.service-card:hover{transform:translateY(-7px);border-color:var(--gold);background:#332429}.card-no{font-size:11px;color:var(--gold);letter-spacing:2px}.card-symbol{font-family:Georgia,serif;font-size:47px;color:var(--gold);line-height:1.2;margin:12px 0}.service-card h3{font-size:33px;margin:0 0 9px}.service-card p{font-size:12px;color:#cfc1bd;margin:0}.repertoire{color:white;background:radial-gradient(circle at center,#783744,#4b1d2a 70%,#351922);position:relative}.repertoire .center{max-width:790px}.repertoire p:not(.kicker){font-size:16px;line-height:2}.repertoire strong{display:block;font-size:11px;letter-spacing:3px;color:#f1d3a0;margin-top:35px}.decorative-rule{color:var(--gold);font-size:22px;margin-bottom:22px}.coverage{background:#f4ecdf}.coverage-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:50px}.coverage-card{border:1px solid #d5c3a6;padding:48px 40px;background:#fffaf3;position:relative}.coverage-card:before{content:"";position:absolute;left:0;top:0;width:80px;height:4px;background:var(--gold)}.coverage-num{font-size:11px;color:#956c3c;font-weight:700;letter-spacing:2px}.coverage-card h3{font-size:40px;margin:25px 0 16px}.coverage-card p{font-size:13px;margin:0}.booking{background:linear-gradient(120deg,#161313,#2c1d20);color:white;text-align:center}.booking-inner{max-width:820px;border:1px solid rgba(213,174,104,.45);padding:65px 30px}.booking h2{color:#fff}.booking-highlight{display:flex;justify-content:center;align-items:center;gap:18px;flex-wrap:wrap;margin:30px 0;color:var(--gold)}.booking-highlight span{font-size:11px;letter-spacing:2px;font-weight:700}.booking-highlight strong{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(50px,8vw,90px);line-height:1}.booking-inner>p:last-child{font-size:15px;margin:0}.values{background:#f7f1e8}.values .center>p:not(.kicker){max-width:700px;margin:auto}.values-row{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:48px}.values-row span{padding:24px 8px;border-top:1px solid #bca27a;border-bottom:1px solid #bca27a;font-size:12px;font-weight:800;letter-spacing:3px;color:#77532d}.closing{background:#602432;color:#fff;padding:90px 0}.closing h2{color:var(--gold)}.closing .center{max-width:740px}.closing p:not(.kicker){font-size:14px}.closing-note{border-top:1px solid #aa7b78;padding-top:25px;margin-top:25px}footer{background:#130f10;color:#e8ddd0;padding:32px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-inner strong{font-family:'Cormorant Garamond',Georgia,serif;font-size:22px;color:var(--gold)}.footer-inner small{display:block;font-size:9px;letter-spacing:3px}.footer-inner p,.footer-inner a{font-size:10px;margin:0}.footer-inner a{color:var(--gold);font-weight:700;letter-spacing:1px}.reveal{opacity:1;transform:none}.js .reveal{opacity:1;transform:none;transition:opacity .7s ease,transform .7s ease}.js .reveal.visible{opacity:1;transform:none}@media(max-width:1050px){.header nav{gap:12px}.header nav a{font-size:10px}.two-col{gap:40px}}@media(max-width:850px){.header{padding:14px 5%}.menu-toggle{display:flex;width:42px;height:42px;flex-direction:column;justify-content:center;gap:6px;background:none;border:1px solid rgba(213,174,104,.5);padding:10px;cursor:pointer}.menu-toggle span{height:2px;width:100%;background:var(--gold)}.header nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;gap:0;background:#1c1617;border-bottom:1px solid var(--gold);padding:15px 5% 20px}.header nav.open{display:flex}.header nav a{padding:12px 0;font-size:12px}.two-col{grid-template-columns:1fr}.art-panel{max-width:550px;width:100%;margin:0 auto}.cards{grid-template-columns:repeat(2,1fr)}.footer-inner{flex-direction:column;text-align:center}.section{padding:80px 0}}@media(max-width:560px){.brand-top{font-size:18px}.brand-bottom{font-size:8px;letter-spacing:2px}.hero{min-height:720px;padding:135px 20px 100px}.hero-pattern{inset:10px}.hero:before{width:110vw;height:110vw}.hero:after{width:90vw;height:90vw}.hero-subtitle{letter-spacing:4px}.hero-bottom{font-size:8px;letter-spacing:1px;bottom:28px}.hero-bottom span{padding:0 6px}h1{letter-spacing:1px}h1 span{font-size:clamp(47px,13vw,72px)}h1 strong{font-size:clamp(49px,13vw,74px)}.cards,.coverage-grid,.values-row{grid-template-columns:1fr}.service-card{min-height:220px}.art-panel{padding:15px;min-height:350px;box-shadow:12px 12px 0 #e5d7c4}.art-frame{min-height:320px}.coverage-card{padding:35px 26px}.booking-inner{padding:40px 18px}.booking-highlight{gap:8px}.booking-highlight span{width:100%}.kicker,.eyebrow{letter-spacing:2px}.section{padding:70px 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js .reveal{opacity:1;transform:none;transition:none}*{animation:none!important;transition:none!important}}

/* La página permanece visible aunque los scripts no carguen. */
:focus-visible{outline:2px solid #d5ae68;outline-offset:4px}
@media(max-width:400px){.hero-inner{width:100%}h1 span{font-size:clamp(38px,12vw,55px)}h1 strong{font-size:clamp(39px,12vw,57px)}.hero-subtitle{letter-spacing:2px}.brand-top{font-size:16px}}
