@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&display=swap');
:root{--navy:#172c40;--ivory:#f5f2eb;--gold:#a78a58;--graphite:#414a50;--line:#ded9ce}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--graphite);font-family:'DM Sans',Arial,sans-serif;background:var(--ivory);line-height:1.65}a{color:inherit}button{font:inherit}.wrap{max-width:1160px;margin:auto;padding:0 32px}.skip{position:absolute;top:-100px;left:12px;background:white;padding:8px;z-index:10}.skip:focus{top:8px}.header{background:var(--ivory);position:sticky;top:0;z-index:5;border-bottom:1px solid #e6e1d8}.nav{height:94px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:15px;text-decoration:none;color:var(--navy)}.monogram{display:grid;place-items:center;width:51px;height:51px;border:1px solid var(--gold);font:25px Georgia,serif;letter-spacing:-4px;padding-right:4px}.brand-text{font-size:11px;letter-spacing:2.2px;line-height:1.5}.brand-text strong{display:block;font-size:17px;letter-spacing:3.5px;font-weight:600}.nav nav{display:flex;gap:30px;align-items:center}.nav nav a{text-decoration:none;font-size:13px;font-weight:600}.nav nav a:hover,.text-link:hover{color:var(--gold)}.nav-contact{border:1px solid var(--gold);padding:9px 18px}.menu-toggle{display:none;border:0;background:transparent;color:var(--navy);font-size:25px}.hero{background:var(--navy);color:white;position:relative;overflow:hidden}.hero-inner{position:relative;z-index:1;padding-top:112px;padding-bottom:74px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:3px;color:#c6b18b}.eyebrow.dark{color:#92774a}.eyebrow span{display:inline-block;width:30px;border-top:1px solid var(--gold);vertical-align:middle;margin:0 12px}.hero h1,h2{font-family:'Libre Baskerville',Georgia,serif;letter-spacing:-1.7px;font-weight:400;line-height:1.28}.hero h1{font-size:clamp(39px,5vw,65px);max-width:850px;margin:35px 0 22px}.hero h1 em,h2 em{color:#c6ab78;font-weight:400}.hero p{font-size:18px;max-width:570px;color:#d4dce1}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:39px;flex-wrap:wrap}.btn{display:inline-flex;gap:30px;align-items:center;justify-content:space-between;text-decoration:none;padding:14px 24px;font-weight:700;font-size:13px}.btn.gold{background:var(--gold);color:#152638}.btn.navy{background:var(--navy);color:white;margin-top:22px}.subtle-link{font-size:13px;text-decoration:none;color:#f1eee7}.hero-foot{margin-top:90px;color:#c2cbd0;font-size:10px;letter-spacing:2.5px}.hero-foot b{padding:0 13px;color:var(--gold)}.hero-deco{position:absolute;right:-4%;top:3%;font:400 400px Georgia,serif;letter-spacing:-60px;color:#ffffff07;pointer-events:none}.section{padding:105px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:100px}.section h2{font-size:clamp(32px,3.6vw,46px);color:var(--navy);margin:24px 0 0}.about-copy{padding-top:27px}.about-copy p{margin:0 0 20px}.text-link{display:inline-block;margin-top:12px;color:var(--navy);font-weight:700;text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:5px}.services{background:#ede9e0}.section-heading{display:flex;justify-content:space-between;gap:45px;align-items:end;margin-bottom:45px}.section-heading p{max-width:360px}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.service{background:var(--ivory);padding:35px;min-height:225px;border-top:2px solid var(--gold)}.service .num{font-size:12px;color:var(--gold);font-weight:700}.service h3{font:400 24px 'Libre Baskerville',Georgia,serif;color:var(--navy);margin:20px 0 12px}.service p{margin:0;font-size:14px}.approach{background:var(--navy);color:#d9e1e5}.approach h2{color:white}.approach .split>div:nth-child(2){padding-top:28px}.principles{margin-top:34px}.principles div{display:flex;gap:22px;padding:16px 0;border-top:1px solid #526171}.principles span{color:#c6ab78;font-size:12px}.principles strong{font-weight:500}.contact p{max-width:440px}.contact-panel{background:white;padding:38px;border:1px solid var(--line)}.small-label{display:block;font-size:10px;letter-spacing:2px;font-weight:700;color:#967b4e}.email{display:block;font-size:clamp(16px,1.8vw,22px);line-height:1.6;font-weight:600;color:var(--navy);margin:12px 0;overflow-wrap:anywhere}.note{font-size:12px;color:#72777a}.contact-divider{border-top:1px solid var(--line);margin:25px 0}.footer{background:#102234;color:#c9d1d7;padding:35px 0;font-size:12px}.footer-inner{display:flex;justify-content:space-between;gap:20px}.footer strong{display:block;color:white;letter-spacing:1.5px}.footer span{display:block}.footer-inner>div:last-child{text-align:right}@media(max-width:800px){.wrap{padding:0 22px}.nav{height:75px}.menu-toggle{display:block}.nav nav{display:none;position:absolute;top:75px;left:0;right:0;background:var(--ivory);padding:22px;box-shadow:0 10px 18px #0001;flex-direction:column;align-items:stretch;gap:14px}.nav nav.open{display:flex}.hero-inner{padding-top:76px;padding-bottom:50px}.hero-foot{margin-top:60px}.section{padding:75px 0}.split{grid-template-columns:1fr;gap:24px}.section-heading{display:block}.service-grid{grid-template-columns:1fr}.service{min-height:0}.footer-inner{flex-direction:column}.footer-inner>div:last-child{text-align:left}.hero-deco{font-size:250px;top:20%}}@media(max-width:450px){.brand-text{font-size:9px;letter-spacing:1px}.brand-text strong{font-size:14px;letter-spacing:2px}.monogram{width:44px;height:44px}.hero h1{letter-spacing:-1px}.hero-actions{align-items:flex-start;flex-direction:column}.hero-foot{font-size:9px;line-height:2}.contact-panel{padding:24px}}

/* Ampliaciones de la segunda versión */
.brand-text small {display:block;font-size:.64em;letter-spacing:.12em;font-weight:500;margin-top:2px;}
.director {background:#f1ede5;}
.director h3 {font-family:Georgia,serif;font-size:1.55rem;color:#172c40;margin:0 0 1rem;}
.portrait-placeholder {margin-top:2rem;max-width:340px;min-height:210px;border:1px solid #cbbda7;background:linear-gradient(135deg,#e8e1d5,#f8f5ef);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1rem;color:#786a55;}
.portrait-placeholder span {font-family:Georgia,serif;font-size:3rem;letter-spacing:.1em;color:#a78a58;}
.portrait-placeholder small {font-size:.8rem;text-align:center;}
@media (max-width:900px){.hero h1{font-size:clamp(2.2rem,7vw,4.2rem)}.brand-text small{letter-spacing:.07em}}

/* Contacto directo: tercera versión */
.whatsapp-number{font-size:1.2rem;color:var(--navy);font-weight:700;text-decoration:none;border-bottom:1px solid var(--gold)}
.btn.whatsapp{background:#23634d;color:white;margin-top:14px;width:100%;justify-content:center}
.btn.whatsapp-hero{border:1px solid #bba77f;color:white;background:transparent;padding:13px 19px}
.btn.whatsapp:hover{background:#174a38}
