@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap');
:root{--ink:#171717;--muted:#77736d;--gold:#b18a4b;--paper:#fbfaf8;--line:#e7e2da;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.site-header{height:86px;padding:0 6vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(251,250,248,.94)}.brand{font-size:19px;font-weight:700;letter-spacing:.13em;line-height:1}.brand span{display:block;font-size:9px;letter-spacing:.48em;font-weight:500;margin-top:7px}.site-header nav{display:flex;align-items:center;gap:32px;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.site-header nav a{transition:color .2s}.site-header nav a:hover,.text-link:hover{color:var(--gold)}.nav-cta{border:1px solid var(--gold);padding:13px 18px}.hero{min-height:calc(100vh - 86px);padding:11vh 10vw 46px;display:flex;flex-direction:column;justify-content:center;position:relative;isolation:isolate;overflow:hidden}.hero:after{content:"";position:absolute;z-index:0;right:3vw;top:17%;width:31vw;height:54vh;border:1px solid rgba(177,138,75,.28);pointer-events:none}.hero>*{position:relative;z-index:1}.hero .eyebrow{align-self:flex-start;white-space:normal;max-width:100%;line-height:1.7}.hero h1{max-width:900px}.hero .button span{font-family:Arial,sans-serif;font-size:20px;font-weight:400;color:var(--gold)}.hero-mark{display:none}.eyebrow,.section-label{font-size:10px;letter-spacing:.22em;font-weight:600}.eyebrow{color:var(--gold)}h1,h2{font-weight:500;letter-spacing:-.045em}h1{font-size:clamp(52px,8vw,112px);line-height:1.02;margin:24px 0}h1 em,h2 em{font-family:var(--serif);font-weight:500;color:var(--gold)}.hero-copy{max-width:560px;font-size:15px;line-height:1.9;color:#69645e;margin:8px 0 32px}.button{display:inline-flex;align-items:center;gap:34px;width:max-content;background:var(--ink);color:white;padding:18px 22px;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.button span,.text-link span{color:var(--gold);font-size:17px}.hero-foot{display:flex;justify-content:space-between;max-width:520px;margin-top:76px;padding-bottom:10px;font-size:9px;letter-spacing:.16em;color:var(--muted);gap:24px}.hero-foot span{line-height:1.7}.section{padding:115px 10vw}.section-label{color:var(--gold)}.section-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:10vw;align-items:end;margin:35px 0 65px}.section-heading h2,.studio h2,.portfolio-callout h2,.closing h2,.contact-section h2{font-size:clamp(42px,6vw,76px);line-height:1.08;margin:0}.section-heading p,.studio-copy>p:last-child{max-width:430px;line-height:1.9;color:var(--muted);font-size:14px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.service-grid article{padding:28px 22px 20px 0;border-bottom:1px solid var(--line)}.service-grid article span{font-size:10px;color:var(--gold)}.service-grid h3{font-family:var(--serif);font-size:23px;font-weight:500;margin:36px 0 12px}.service-grid p{font-size:12px;line-height:1.8;color:var(--muted);max-width:220px}.studio{background:#191919;color:#f7f4ef;display:grid;grid-template-columns:.5fr 1.5fr;gap:8vw}.studio .section-label{color:var(--gold)}.studio-copy{max-width:760px}.gold{color:var(--gold)}.studio-copy>p:last-child{color:#b8b2aa;margin-top:34px}.portfolio-callout{padding:100px 10vw;display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid var(--line)}.portfolio-callout h2{margin-top:30px}.text-link{font-size:11px;text-transform:uppercase;letter-spacing:.12em;border-bottom:1px solid var(--gold);padding-bottom:12px}.closing{padding:120px 10vw;text-align:center;background:#f1eee8}.closing h2{margin:28px 0 36px}.closing .button{margin:auto}.closing.compact{padding:90px 10vw}footer{padding:34px 6vw;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line)}footer p,footer>span{font-size:10px;color:var(--muted);letter-spacing:.06em}.page-hero{padding:110px 10vw 70px;border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(48px,7vw,92px)}.page-hero>p:last-child{color:var(--muted);font-size:14px;line-height:1.8}.portfolio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 24px;margin-top:32px}.portfolio-card{display:block}.portfolio-card img,.card-placeholder{width:100%;aspect-ratio:1.35;object-fit:cover;background:#e9e5de}.card-placeholder{display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:10px;letter-spacing:.3em}.card-title{display:flex;align-items:center;justify-content:space-between;margin-top:16px}.card-title h2{font:500 25px var(--serif);margin:0}.card-title span{color:var(--gold)}.portfolio-card p{font-size:12px;color:var(--muted)}.status{font-size:13px;color:var(--muted);line-height:1.8;margin-top:25px}.project-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:40px}.project-gallery img,.project-gallery video{width:100%;height:auto;display:block}.project-gallery figure{margin:0}.project-gallery figcaption{font-size:11px;color:var(--muted);padding:10px 0}.contact-section{display:grid;grid-template-columns:1.2fr .8fr;gap:10vw}.contact-section h2{margin:30px 0}.contact-section>div>p:not(.eyebrow){max-width:520px;color:var(--muted);font-size:14px;line-height:1.9}.contact-note{border-left:1px solid var(--gold);padding:25px 0 25px 32px;align-self:center}.contact-note span{font-size:10px;letter-spacing:.2em}.contact-note p{font-size:13px;color:var(--muted);line-height:1.9}.contact-note .text-link{display:inline-block;margin-top:25px}.contact-hero{padding-bottom:95px}
@media(max-width:760px){.site-header{height:auto;min-height:75px;padding:18px 6vw;align-items:flex-start}.site-header nav{gap:13px;flex-wrap:wrap;justify-content:flex-end;font-size:9px;max-width:60%}.site-header nav a:nth-child(1),.site-header nav a:nth-child(3){display:none}.nav-cta{padding:10px 12px}.hero{min-height:calc(100svh - 75px);padding:10vh 7vw 38px}.hero:after{right:-19vw;top:20%;width:54vw;height:43vh}.hero .eyebrow{font-size:9px;letter-spacing:.17em;max-width:100%;margin:0 0 10px}.hero h1{font-size:clamp(46px,12vw,58px);line-height:1.08;margin:20px 0 24px;max-width:100%}.hero-copy{font-size:14px;line-height:1.85;margin:8px 0 28px}.hero-foot{margin-top:58px;font-size:8px;gap:22px;max-width:100%}.hero-foot span{max-width:48%}.hero .button{gap:26px;padding:18px 20px}.hero .button span{font-size:19px}.section{padding:80px 7vw}.section-heading,.studio,.contact-section{grid-template-columns:1fr;gap:24px}.section-heading{margin:28px 0 42px}.service-grid{grid-template-columns:repeat(2,1fr);gap:0 18px}.studio{padding:80px 7vw}.portfolio-callout{padding:80px 7vw;display:block}.portfolio-callout .text-link{display:inline-block;margin-top:35px}.closing{padding:90px 7vw}footer{padding:28px 7vw;flex-wrap:wrap}footer p{order:3;width:100%}.page-hero{padding:80px 7vw 55px}.portfolio-grid,.project-gallery{grid-template-columns:1fr}.contact-note{margin-top:20px}.portfolio-card img,.card-placeholder{aspect-ratio:1.2}}

.brand-logo{display:inline-flex;align-items:center;max-width:190px}.brand-logo img{display:block;width:100%;height:auto;max-height:54px;object-fit:contain;background:transparent}.site-header .brand-logo{width:175px}footer .brand-logo{width:150px}
@media(max-width:760px){.site-header .brand-logo{width:130px}.brand-logo img{max-height:42px}}

/* Portada móvil: adelantar la etiqueta de servicios al espacio superior señalado */
@media(max-width:760px){
  .hero{justify-content:flex-start;padding-top:6vh}
  .hero .eyebrow{margin:0 0 20vh;position:relative;z-index:3}
  .hero h1{margin-top:0}
  .hero:after{z-index:0;top:30%;right:-19vw}
}

.contact-actions{display:flex;flex-direction:column;align-items:flex-start;gap:18px;margin-top:28px}.contact-actions .button{margin:0}.contact-email,.contact-phone{font-size:13px;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:5px}.contact-email:hover,.contact-phone:hover,footer a:hover{color:var(--gold)}.contact-note a{transition:color .2s}.contact-note a:hover{color:var(--gold)}footer p a{white-space:nowrap}
