@import url('https://fonts.googleapis.com/css2?family=DM+Mono&family=DM+Sans:wght@400;500;600&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');

/* Fotos oficiales: Carpentum.zip */
.hero-visual{background:url('public/images/IMG-20260622-WA0005.jpg') center/cover}.hero-visual:after{background:linear-gradient(0deg,rgba(40,25,14,.56),rgba(40,25,14,.04) 65%)}.wood-grain{display:none}.gallery-card{background-position:center;background-size:cover}.slot-1{background-image:url('public/images/IMG-20250916-WA0066.jpg')}.slot-2{background-image:url('public/images/IMG-20250912-WA0223.jpg')}.slot-3{background-image:url('public/images/IMG-20230405-WA0000.jpg')}.slot-4{background-image:url('public/images/IMG-20251128-WA0281.jpg')}

:root{--ink:#30271f;--wood:#765236;--clay:#a87652;--paper:#f5f0e7;--sand:#ded1bd;--line:rgba(48,39,31,.18);--mono:'DM Mono',monospace;--sans:'DM Sans',sans-serif;--serif:'Playfair Display',serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.5}.site-header{height:76px;display:flex;align-items:center;justify-content:space-between;max-width:1300px;margin:auto;padding:0 4vw;border-bottom:1px solid var(--line)}.brand{font-family:var(--serif);font-size:1.75rem;color:inherit;text-decoration:none;letter-spacing:-.06em}.brand span{color:var(--clay)}nav{display:flex;align-items:center;gap:2rem}nav a{color:inherit;text-decoration:none;font-size:.86rem}.nav-contact{border-bottom:1px solid var(--ink);padding-bottom:2px}.hero{max-width:1300px;margin:auto;min-height:620px;padding:8rem 4vw 6rem;display:grid;grid-template-columns:1.12fr .88fr;gap:6vw;align-items:center}.eyebrow{font:500 .68rem/1.2 var(--mono);letter-spacing:.09em;text-transform:uppercase;color:var(--wood);margin:0 0 1.25rem}.hero h1,h2{font:500 clamp(2.7rem,5.6vw,5.8rem)/.98 var(--serif);letter-spacing:-.055em;margin:0}.intro{max-width:510px;font-size:1.1rem;margin:1.8rem 0 2rem;color:#5b4b3c}.button{display:inline-flex;gap:.7rem;align-items:center;padding:.95rem 1.25rem;background:var(--ink);color:#fff;text-decoration:none;font-size:.9rem;transition:transform .2s}.button:hover{transform:translateY(-2px)}.placeholder-note,.confirm-text{font-size:.72rem;color:#887968;margin:.7rem 0 0}.hero-visual{min-height:430px;position:relative;overflow:hidden;background:linear-gradient(120deg,#9c704b,#c7a77b 45%,#765236);padding:1.7rem;color:#fff;display:flex;justify-content:flex-end;flex-direction:column}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(40,25,14,.48),transparent 58%)}.hero-visual p,.hero-visual small{z-index:1;margin:0}.hero-visual p{font:500 2.1rem/1 var(--serif);max-width:250px}.hero-visual small{font:.68rem var(--mono);margin-top:.8rem;opacity:.85}.wood-grain{position:absolute;inset:-20%;opacity:.35;background:repeating-radial-gradient(ellipse at 30% 10%,transparent 0 10px,rgba(63,35,18,.55) 11px 12px,transparent 14px 26px);transform:rotate(-12deg)}.section{max-width:1300px;margin:auto;padding:7rem 4vw}.section-heading{max-width:600px}.section-heading h2{font-size:clamp(2.5rem,4.5vw,4.8rem)}.section-heading>p:last-child{margin-top:1rem;color:#5b4b3c}.gallery{overflow:hidden}.gallery-scroll{display:flex;gap:1.2rem;overflow-x:auto;padding:3.5rem 4vw 1rem;margin:0 -4vw;scroll-snap-type:x mandatory;scrollbar-width:none}.gallery-scroll::-webkit-scrollbar{display:none}.gallery-card{flex:0 0 min(450px,77vw);height:430px;scroll-snap-align:start;display:flex;align-items:end;padding:1.15rem;color:#fff;font:500 1.5rem var(--serif);position:relative;overflow:hidden}.gallery-card:before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(24,15,8,.55),transparent 55%)}.gallery-card span{position:relative}.slot-1{background:#85603f}.slot-2{background:#b18e67}.slot-3{background:#6a4c36}.slot-4{background:#987653}.image-slot{background-image:linear-gradient(135deg,rgba(255,255,255,.08) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.08) 50%,rgba(255,255,255,.08) 75%,transparent 75%);background-size:32px 32px}.gallery-hint{font:.75rem var(--mono);color:var(--wood);margin:1rem 0}.services{border-top:1px solid var(--line)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:4rem}.service-grid article{border-top:1px solid var(--ink);padding-top:1rem}.service-grid b{font:400 .7rem var(--mono);color:var(--clay)}h3{font:500 1.65rem var(--serif);margin:2.2rem 0 .6rem}.service-grid p{max-width:270px;color:#5b4b3c;margin:0}.custom-work{background:var(--wood);color:#fff;padding:6rem max(4vw,calc((100vw - 1300px)/2 + 4vw));display:flex;align-items:end;justify-content:space-between;gap:2rem}.custom-work .eyebrow{color:#dec9ad}.custom-work h2{font-size:clamp(2.5rem,4.7vw,4.8rem)}.text-link{color:#fff;text-decoration:none;border-bottom:1px solid #fff;padding-bottom:.25rem;white-space:nowrap}.about{display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw;align-items:start}.about-number{font:500 clamp(8rem,20vw,17rem)/.7 var(--serif);color:var(--sand)}.about h2{font-size:clamp(2.5rem,4.5vw,4.8rem)}.about-copy>p:not(.eyebrow):not(.confirm-text){max-width:550px;font-size:1.08rem;color:#5b4b3c;margin:1.8rem 0 0}.contact{background:var(--ink);color:#fff;text-align:center;padding-top:7rem;padding-bottom:3rem}.contact .eyebrow{color:#d9b98f}.contact h2{font-size:clamp(2.8rem,5vw,5.3rem);max-width:800px;margin:0 auto 2rem}.button-light{background:#e7dccb;color:var(--ink)}.contact-meta{border-top:1px solid rgba(255,255,255,.25);margin-top:6rem;padding-top:1.25rem;display:flex;justify-content:space-between;text-align:left;font:.72rem var(--mono);color:#dbd0c0}.contact-meta a{color:#fff;text-decoration:none}footer{max-width:1300px;margin:auto;padding:1.2rem 4vw;display:flex;justify-content:space-between;font:.68rem var(--mono);color:#796958}@media(max-width:700px){.site-header{height:65px}.site-header nav a:not(.nav-contact){display:none}nav{gap:0}.hero{min-height:auto;grid-template-columns:1fr;padding-top:5rem;gap:3.5rem}.hero h1 br{display:none}.hero-visual{min-height:330px}.section{padding-top:5rem;padding-bottom:5rem}.gallery-scroll{padding-top:2.5rem}.gallery-card{height:350px}.service-grid{grid-template-columns:1fr;gap:2.5rem;margin-top:3rem}.custom-work{padding-top:5rem;padding-bottom:5rem;display:block}.text-link{display:inline-block;margin-top:2rem}.about{grid-template-columns:1fr;gap:2rem}.about-number{font-size:10rem}.contact-meta{margin-top:4rem;display:grid;gap:1rem}footer{font-size:.6rem}}
