*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f7f6f2;color:#111;font-family:Montserrat,Arial,sans-serif}.site-header{height:76px;background:#080808;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 5%;position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none}.brand-dv{font-family:"Playfair Display",serif;font-size:36px;font-weight:700;color:#c9a24a;line-height:1}.brand-name{letter-spacing:5px;font-size:13px}.brand-name b{display:block;text-align:center;letter-spacing:3px}.desktop-nav{display:flex;align-items:center;gap:8px}.desktop-nav a{color:#f4f1ea;text-decoration:none;text-transform:uppercase;font-size:12px;font-weight:600;letter-spacing:1px;padding:13px 17px;border-radius:5px;transition:.25s ease}.desktop-nav a:hover{color:#080808;background:#c9a24a}.desktop-nav .active{color:#080808;background:#c9a24a;box-shadow:0 5px 18px #c9a24a22}.nav-cta{margin-left:10px;border:1px solid #c9a24a!important;border-radius:6px!important;padding:14px 22px!important;background:linear-gradient(180deg,#d6b05a,#b88d35)!important;color:#080808!important;box-shadow:0 7px 22px #0005}.menu-btn{display:none;background:none;color:#fff;border:0;font-size:25px}.hero{min-height:650px;display:grid;grid-template-columns:44% 56%;background:#ece9e2}.hero-copy{padding:95px 8% 50px;background:linear-gradient(110deg,#f7f6f2 0%,#eeeae2 80%,#ddd8ce 100%)}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2.4px;margin:0 0 18px}.gold{color:#a67d2c}.hero h1,h2{font-family:"Playfair Display",serif}.hero h1{font-size:clamp(48px,5vw,78px);line-height:.98;margin:0 0 24px}.hero h1 em{color:#a67d2c;font-style:normal}.hero-text{font-family:"Playfair Display",serif;font-size:24px;max-width:430px}.actions{display:flex;gap:12px;margin:30px 0}.btn{display:inline-flex;justify-content:center;align-items:center;gap:14px;padding:17px 28px;border-radius:7px;text-decoration:none;font-weight:700;text-transform:uppercase;font-size:12px;letter-spacing:.8px;border:0;cursor:pointer;box-shadow:0 8px 22px #00000014;transition:.25s ease}.btn:hover{transform:translateY(-2px);box-shadow:0 12px 28px #00000022}.btn-gold{background:linear-gradient(180deg,#d7b35d,#c39a43);color:#080808}.btn-outline{border:1px solid #b8b1a5;color:#111;background:#fffdf9}.trust-row{display:flex;gap:20px;flex-wrap:wrap;margin-top:45px;font-size:10px}.hero-image{min-height:650px;position:relative;overflow:hidden;background:#242321}.hero-image img{display:block;width:100%;height:100%;min-height:650px;position:absolute;inset:0;object-fit:cover;object-position:center}.hero-image:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.58));pointer-events:none}.hero-image-caption{position:absolute;z-index:2;bottom:24px;left:26px;right:80px;color:#fff;font-size:10px;letter-spacing:1.7px;text-transform:uppercase;text-shadow:0 1px 5px #000}.hero-arrow{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:46px;height:46px;border:1px solid #ffffff99;border-radius:50%;background:#08080899;color:#fff;font-size:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,border-color .2s ease}.hero-arrow:hover,.hero-arrow:focus-visible{background:#c9a24a;color:#080808;border-color:#c9a24a;outline:2px solid #fff;outline-offset:2px}.hero-arrow-prev{left:18px}.hero-arrow-next{right:18px}.hero-slide-count{position:absolute;z-index:2;right:28px;bottom:24px;color:#fff;font-size:10px;letter-spacing:1.5px;text-shadow:0 1px 5px #000}@media(max-width:1000px){.hero-image,.hero-image img{min-height:420px}}.section{padding:90px 5%}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px}.section-head h2{font-size:46px;line-height:1.05;margin:0 0 10px;font-weight:600;letter-spacing:-.5px}.section-head p:not(.eyebrow){margin:0;color:#66635e;font-size:14px;line-height:1.7}.text-link{color:#9b7225;text-decoration:none;font-size:11px;text-transform:uppercase;font-weight:700}.category-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.category-card{display:block;color:inherit;text-decoration:none;background:#fff;border:1px solid #ddd8ce;border-radius:9px;overflow:hidden;padding-bottom:18px;box-shadow:0 8px 24px #0000000a;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.category-card:hover,.category-card:focus-visible{transform:translateY(-4px);box-shadow:0 15px 32px #00000018;border-color:#c9a24a;outline:2px solid #c9a24a;outline-offset:2px}.stone-img{display:block;width:100%;height:145px;object-fit:cover;object-position:center;transition:transform .4s ease}.category-card:hover .stone-img{transform:scale(1.04)}.category-card-copy{padding:0 16px}.stone-1{background:radial-gradient(circle at 30% 40%,#c9c0ad 0 8%,#39342e 9% 13%,#e8e3d6 14% 22%,#5c564d 23% 28%,#bdb5a5 29% 100%)}.stone-2{background:radial-gradient(circle,#fff 0 3%,#151515 4% 20%,#574c3d 21% 28%,#050505 29% 100%)}.stone-3{background:linear-gradient(135deg,#eee8df,#fff 40%,#8e8075 42%,#f6f1e8 45%,#fff)}.stone-4{background:linear-gradient(120deg,#d8c8b3,#8f7b68 42%,#d5c4ae 70%,#7c6c5e)}.stone-5{background:linear-gradient(120deg,#f5f1e9,#ddd9d1,#f8f5ee)}.stone-6{background:linear-gradient(135deg,#141414,#352b26 48%,#050505 49%,#8b6030 51%,#111 55%)}.category-card h3{font-family:"Playfair Display",serif;font-size:19px;margin-top:16px;margin-bottom:9px;font-weight:600}.category-card span{font-size:10px;background:#f1e1c6;border-radius:20px;padding:8px 12px;display:inline-block;font-weight:700;letter-spacing:.3px}.category-card small{display:block;color:#9b7225;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin-top:14px}.styles-section{background:#eeece6}.style-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:15px}.style-card{min-height:190px;padding:28px;display:flex;flex-direction:column;justify-content:end;background:#d8d0c3;border-radius:9px;position:relative;overflow:hidden;box-shadow:0 8px 24px #00000012;transition:.25s ease}.style-card:hover{transform:translateY(-4px)}.style-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent,#0005)}.style-card>*{position:relative}.style-card b{font-family:"Playfair Display",serif;font-size:24px}.style-card small{margin-top:5px}.style-light{background:#e8dfd0}.style-gray{background:#747371}.style-warm{background:#aa9275}.style-dark{background:#262625;color:#fff}.style-vein{background:linear-gradient(135deg,#eee9df 35%,#948b82 36%,#f4eee4 40%,#ddd3c4 70%,#fff)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.service-grid article{background:#fff;border:1px solid #ddd8ce;border-radius:9px;padding:32px;min-height:180px;box-shadow:0 8px 24px #0000000a;transition:.25s ease}.service-grid article:hover{transform:translateY(-3px);box-shadow:0 14px 30px #00000014}.service-grid span{color:#b38a3b;font-family:"Playfair Display",serif;font-size:28px}.service-grid h3{font-family:"Playfair Display",serif;font-size:23px;margin:14px 0 8px}.service-grid p{color:#666;font-size:13px}.projects{background:#111;color:#fff}.projects .section-head p:not(.eyebrow){color:#aaa}.status-note{border:1px solid #c9a24a;color:#c9a24a;padding:10px 14px;font-size:10px;text-transform:uppercase}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.project-placeholder{height:320px;border-radius:9px;overflow:hidden;background:linear-gradient(135deg,#54483e,#161616 60%,#8c775e);display:flex;align-items:center;justify-content:center;text-align:center;color:#ddd;letter-spacing:2px;font-size:12px}.project-placeholder small{letter-spacing:0}.about{display:grid;grid-template-columns:1fr 1fr;gap:70px}.about h2{font-size:48px}.about p{line-height:1.8;color:#555}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:35px}.steps div{border-top:1px solid #c9a24a;padding-top:12px}.steps b{display:block;color:#b08231;font-family:"Playfair Display",serif;font-size:28px}.steps span{font-size:11px}.quote{background:#151515;color:#fff;padding:75px 8%;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.quote h2{font-size:48px;margin:0 0 15px}.quote p{color:#bbb;line-height:1.7}.quote form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.quote input,.quote select{width:100%;padding:16px;border:1px solid #444;background:#f7f6f2;color:#111;border-radius:3px}.quote .wide{grid-column:1/-1}footer{background:#f7f6f2;padding:55px 5% 25px;display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr 1fr;gap:35px;position:relative}footer h4{margin:0 0 15px;font-size:11px;text-transform:uppercase;letter-spacing:1px}footer a,footer p{display:block;color:#666;text-decoration:none;font-size:11px;margin:8px 0}.footer-brand{display:flex;align-items:center;gap:12px;font-size:14px;letter-spacing:3px}.footer-phrase{font-family:"Playfair Display",serif;letter-spacing:3px;color:#8c8378;font-size:12px;line-height:1.7}.copyright{grid-column:1/-1;border-top:1px solid #ddd7cd;padding-top:18px;font-size:10px;color:#777}@media(max-width:1000px){.desktop-nav{display:none}.menu-btn{display:block}.hero{grid-template-columns:1fr}.hero-image{min-height:420px}.category-grid{grid-template-columns:repeat(3,1fr)}.style-grid{grid-template-columns:repeat(2,1fr)}.service-grid{grid-template-columns:repeat(2,1fr)}.about,.quote{grid-template-columns:1fr}.project-grid{grid-template-columns:1fr 1fr}footer{grid-template-columns:1fr 1fr}}@media(max-width:600px){.hero-arrow{width:40px;height:40px}.hero-arrow-prev{left:12px}.hero-arrow-next{right:12px}.hero-image-caption{left:14px;right:78px;bottom:20px;font-size:9px}.hero-slide-count{right:14px;bottom:20px}.site-header{height:65px}.brand-name{font-size:10px}.hero-copy{padding:65px 7% 45px}.hero h1{font-size:48px}.actions{flex-direction:column}.section{padding:60px 6%}.section-head{display:block}.section-head h2{font-size:34px}.category-grid,.style-grid,.service-grid,.project-grid{grid-template-columns:1fr 1fr}.category-card .stone-img{height:110px}.trust-row{display:grid;grid-template-columns:1fr 1fr}.about h2,.quote h2{font-size:38px}.quote{padding:60px 7%}.quote form{grid-template-columns:1fr}.quote .wide{grid-column:auto}footer{grid-template-columns:1fr}.copyright{grid-column:auto}}
@media(max-width:1000px){.desktop-nav a{width:100%;text-align:center;padding:14px 18px;font-size:12px}.desktop-nav .nav-cta{margin-left:0}}

/* Cotizador multipieza */
.quote{align-items:start}
.quote-intro{position:sticky;top:110px}
.quote-points{padding-left:18px;color:#d8d2c7;line-height:2;font-size:13px}
.quote-form{display:flex;flex-direction:column;gap:18px;min-width:0}
.quote-top-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.quote-form label{display:flex;flex-direction:column;gap:8px;font-size:11px;font-weight:600;letter-spacing:.2px;color:inherit}
.quote-form input:not([type=checkbox]),.quote-form select,.quote-form textarea{width:100%;min-width:0;padding:14px 15px;border:1px solid #d7d0c4;border-radius:6px;background:#fffdfa;color:#151515;font:500 12px Montserrat,Arial,sans-serif}
.quote-form input:focus,.quote-form textarea:focus{outline:2px solid #c9a24a;outline-offset:1px}
.pieces-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:10px}
.pieces-heading h3{font-family:"Playfair Display",serif;font-size:26px;margin:3px 0 0}
.btn-small{padding:12px 14px;font-size:10px;white-space:nowrap}
.pieces-carousel{overflow:hidden;width:100%;border-radius:10px}
.pieces-container{display:flex;flex-direction:row;gap:0;width:100%;transition:transform .42s cubic-bezier(.22,.75,.25,1);will-change:transform}
.piece-card{flex:0 0 100%;min-width:0;opacity:.78;transition:opacity .3s ease,transform .42s cubic-bezier(.22,.75,.25,1);transform:scale(.985)}
.piece-card.is-active{opacity:1;transform:scale(1)}
.piece-navigation{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin-top:-5px;padding:0 2px}
.piece-nav-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:42px;padding:10px 14px;border:1px solid #6e624d;border-radius:6px;background:#211f1b;color:#f5f0e5;font:600 11px Montserrat,Arial,sans-serif;cursor:pointer;transition:background .25s ease,color .25s ease,border-color .25s ease,transform .25s ease}
.piece-nav-button:not(:disabled):hover{background:#d2ad59;color:#111;border-color:#d2ad59;transform:translateY(-1px)}
.piece-nav-button:disabled{opacity:.35;cursor:not-allowed}
.piece-nav-button span{font-size:17px;line-height:1}
.piece-step-count{color:#d7b35d;font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;text-align:center;white-space:nowrap}
@media(prefers-reduced-motion:reduce){.pieces-container,.piece-card,.piece-nav-button{transition:none!important}}
.piece-card{border:1px solid #514b41;background:#211f1b;border-radius:10px;padding:20px;display:flex;flex-direction:column;gap:15px}
.piece-card-head{display:flex;justify-content:space-between;align-items:center}
.piece-card-head h4{font-family:"Playfair Display",serif;font-size:21px;margin:5px 0 0}
.piece-number{color:#d7b35d;font-size:10px;font-weight:700;letter-spacing:1.5px}
.remove-piece{width:34px;height:34px;border:1px solid #726957;border-radius:50%;background:transparent;color:#fff;font-size:22px;cursor:pointer}
.dimension-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.perforations{border:1px solid #514b41;border-radius:7px;padding:12px;display:flex;flex-wrap:wrap;gap:14px}
.perforations legend{font-size:11px;font-weight:600;padding:0 5px;color:#e9e2d5}
.perforations label,.check-line{display:flex;flex-direction:row!important;align-items:center;gap:7px!important;font-weight:500!important}
.perforations input,.check-line input{accent-color:#c9a24a}
.service-options{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:17px;border:1px solid #514b41;border-radius:8px}
.locality-field{grid-column:1/-1}
.project-notes{display:flex;flex-direction:column;gap:8px}
.form-note{font-size:10px!important;color:#aaa!important;margin:0!important}
.quote-form .wide{width:100%}
@media(max-width:1000px){.quote-intro{position:static}.quote-top-fields{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.piece-navigation{gap:6px}.piece-nav-button{padding:9px 8px;font-size:10px}.piece-step-count{font-size:9px;letter-spacing:.4px}.quote-top-fields,.dimension-grid,.service-options{grid-template-columns:1fr}.locality-field{grid-column:auto}.pieces-heading{align-items:flex-start;flex-direction:column}.btn-small{white-space:normal}.quote-form .btn{line-height:1.5}}

/* Catálogo de piedras: imagen, nombre y CTA individual */
.catalog-tools{display:grid;grid-template-columns:2fr 1fr;gap:16px;max-width:850px;margin:38px 0 24px}
.catalog-tools label{display:flex;flex-direction:column;gap:8px;font-size:11px;text-transform:uppercase;font-weight:700;letter-spacing:1px;color:#555}
.catalog-tools input,.catalog-tools select{padding:15px 17px;border:1px solid #d7d0c4;border-radius:7px;background:#fff;font:500 13px Montserrat,Arial,sans-serif;color:#111}
.stone-catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.stone-product-card{background:#fff;border:1px solid #e0dbd1;border-radius:10px;overflow:hidden;box-shadow:0 8px 22px #00000009;transition:transform .25s,box-shadow .25s}
.stone-product-card:hover{transform:translateY(-4px);box-shadow:0 16px 32px #00000015}
.stone-swatch{height:180px;background-size:cover;background-position:center}
.texture-dark{background:radial-gradient(ellipse at 70% 20%,#76685c 0 1%,transparent 25%),linear-gradient(135deg,#050505,#292623 45%,#0b0b0b 65%,#554638)}
.texture-gray{background:radial-gradient(circle at 25% 25%,#d0cbc2 0 2%,transparent 9%),radial-gradient(circle at 80% 62%,#45433f 0 2%,transparent 11%),linear-gradient(135deg,#b9b5ac,#77746d,#c9c4bb,#65615b)}
.texture-light{background:linear-gradient(125deg,#f4f0e8 0%,#fffdf8 25%,#c9c2b7 26%,#f8f4eb 30%,#fff 50%,#d5cec2 51%,#faf8f3 56%,#eee8df)}
.texture-green{background:radial-gradient(circle at 25% 35%,#6c7460 0 2%,transparent 12%),linear-gradient(135deg,#1c2b22,#455342 40%,#101a15 70%,#67715d)}
.texture-warm{background:linear-gradient(135deg,#d8c4a8,#a68d70 35%,#eee0cb 40%,#b6a087 72%,#e5d6bf)}
.texture-granite{background:radial-gradient(circle at 20% 30%,#eee8dc 0 1%,transparent 4%),radial-gradient(circle at 65% 70%,#262626 0 1%,transparent 4%),radial-gradient(circle at 75% 20%,#d2c8b8 0 1%,transparent 5%),linear-gradient(135deg,#aaa398,#55524d,#c5bcae)}
.texture-veined{background:linear-gradient(130deg,#eee7dc 0 32%,#8c8173 33%,#f7f3eb 35% 60%,#b9aa98 61%,#f6f1e8 65%)}
.stone-product-info{padding:18px 18px 17px}
.stone-family{font-size:9px!important;text-transform:uppercase;letter-spacing:1.4px;color:#9a762e!important;font-weight:700;margin:0 0 7px!important}
.stone-product-info h3{font:600 22px/1.15 "Playfair Display",serif;margin:0 0 18px;min-height:51px}
.stone-card-actions{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #eee8df;padding-top:13px}
.stone-quote-button{width:100%;display:flex;align-items:center;justify-content:space-between;padding:13px 15px;border:0;border-radius:6px;background:#c9a24a;color:#111;font:700 11px Montserrat,Arial,sans-serif;text-transform:uppercase;letter-spacing:.8px;cursor:pointer;transition:background .2s}
.stone-quote-button:hover{background:#d9b85f}
.no-stones{grid-column:1/-1;padding:30px;color:#666}
.social-links{display:flex;flex-direction:column;gap:8px}
.social-links a{display:flex;align-items:center;gap:10px;width:max-content;max-width:100%;padding:7px 0}
.social-icon{display:inline-flex;align-items:center;justify-content:center;width:29px;height:29px;border:1px solid #c9a24a;border-radius:50%;font-size:10px;font-weight:700;color:#8d6926}
@media(max-width:1000px){.stone-catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.catalog-tools{grid-template-columns:1fr}.stone-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.stone-swatch{height:130px}.stone-product-info{padding:13px}.stone-product-info h3{font-size:18px;min-height:44px}.stone-quote-button{padding:12px;font-size:10px}}


/* CTA de Instagram en la sección de trabajos */
.instagram-project-link { text-decoration: none; }
.project-instagram { display:flex; flex-direction:column; justify-content:flex-end; gap:12px; text-decoration:none; padding:28px; min-height:230px; background:linear-gradient(145deg, #242321, #111 65%, #3b3020); color:#f7f6f2; border:1px solid rgba(201,162,74,.35); transition:transform .25s ease, border-color .25s ease; }
.project-instagram:hover { transform:translateY(-4px); border-color:#c9a24a; }
.project-instagram span { color:#c9a24a; font-size:.8rem; letter-spacing:.16em; }
.project-instagram strong { font-family:'Playfair Display',serif; font-size:1.5rem; font-weight:500; }
.project-instagram small { color:#d8d4cc; }

/* Imagen de referencia del producto Blanco Paloma desde el catálogo oficial de Purastone. */
.stone-swatch.texture-official-paloma{background-image:url("https://cdn.shopify.com/s/files/1/0714/9918/6223/files/Blanco_Paloma_PC3P09P201_T2.webp?v=1778602799");background-size:cover;background-position:center;}


/* Imágenes de referencia del catálogo De Stefano para materiales seleccionados. */
.stone-swatch.texture-official-paloma{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Blanco_Paloma_PC3P09P201_A3.jpg");background-size:cover;background-position:center;}
.stone-swatch.texture-official-grey{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Invisible_grey_PC3P36P12J_PR.jpg");background-size:cover;background-position:center;}
.stone-swatch.texture-official-calacatta{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Ora_Gold_PC4PDGM12A_PR-1024x1024.jpeg");background-size:cover;background-position:center;}
.stone-swatch.texture-official-dark{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Titanium_Black_-PC4PTBM121_PR.jpeg");background-size:cover;background-position:center;}

/* Referencias visuales específicas añadidas en la etapa 3 del catálogo. */
.stone-swatch.texture-official-grisperla{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Gto._Gris_Perla_Ldo.20_PC00410201_PR.jpeg");background-size:cover;background-position:center;}
.stone-swatch.texture-official-calacatta-neolith{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Calacatta_C01_PC4C1DK062_PR-scaled.jpg");background-size:cover;background-position:center;}

/* Etapa 4: referencias visuales adicionales del catálogo De Stefano. */
.stone-swatch.texture-official-kashmir{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Gto._Kashmir_White_Ldo20_PC93410201_PR.jpeg");background-size:cover;background-position:center;}
.stone-swatch.texture-official-dallas{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Blanco_Dallas_PC00410201_PR.jpeg");background-size:cover;background-position:center;}
.stone-swatch.texture-official-montblanc{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Mont_Blanc_PC4MBLK061_A3.jpg");background-size:cover;background-position:center;}
.stone-swatch.texture-official-abudhabi{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Abu_Dhabi_White_PC4ABUK061_A3.jpg");background-size:cover;background-position:center;}
.stone-swatch.texture-official-desertblack{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Desert_Black_PC4PDBM121_PR.jpeg");background-size:cover;background-position:center;}
.stone-swatch.texture-official-absoluteblack{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Absolut-Black_PC4PPBM121_PR.webp");background-size:cover;background-position:center;}


/* Etapa 5: referencias adicionales enlazadas a fichas de producto De Stefano. */
.stone-swatch.texture-official-calacatta-purastone{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Calacatta_Gold_PC3P14P20J_PR.png");background-size:cover;background-position:center;}
.stone-swatch.texture-official-negrobrasil{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Negro_Brasil_lustrado_PC01610301_A3.jpg");background-size:cover;background-position:center;}
.stone-swatch.texture-official-pietradiluna{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Pietra_di_luna_PC4PDLK061_PR.jpg");background-size:cover;background-position:center;}
.stone-swatch.texture-official-irongrey{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Iron_Grey_PC4IGRS121_PR.jpg");background-size:cover;background-position:center;}
.stone-swatch.texture-official-basaltgrey{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Basalt_Grey_PC4BGRS031_A3.jpg");background-size:cover;background-position:center;}
.stone-swatch.texture-official-pietragrey{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Pietra_Grey_PC4PGYK061_PR.jpg");background-size:cover;background-position:center;}


/* Etapa 6: referencias adicionales de Purastone y Neolith, vinculadas a fichas de producto. */
.stone-swatch.texture-official-blancoicon{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Blanco_Icon_PC3P19P121_PR.jpg");background-size:cover;background-position:center;}
.stone-swatch.texture-official-blanconube{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Blanco_Nube_PC3P00P201_PR.jpg");background-size:cover;background-position:center;}
.stone-swatch.texture-official-griszen{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Gris_Zen_PC3P10P201_PR.jpg");background-size:cover;background-position:center;}
.stone-swatch.texture-official-onyxwhite{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Onyx-White_PC4POWM12A_PR.png");background-size:cover;background-position:center;}
.stone-swatch.texture-official-whitesands{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/WhiteSands_PE4WHS0121_PR.jpeg");background-size:cover;background-position:center;}
.stone-swatch.texture-official-colosseo{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Colosseo_PC4COLOK061_PR.jpeg");background-size:cover;background-position:center;}
.stone-swatch.texture-official-toscano{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Toscano_PC4TOSK061_PR.jpeg");background-size:cover;background-position:center;}
.stone-swatch.texture-official-artisan{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Artisan_PC4ARTK121_PR.jpeg");background-size:cover;background-position:center;}


/* Etapa 7: referencias adicionales para granitos y superficies claras. */
.stone-swatch.texture-official-blancocana{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Blanco_Cana_PC3P28P20J_PR.jpg");background-size:cover;background-position:center;}
.stone-swatch.texture-official-negroboreal{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Negro_Boreal_PC15130201_A3.jpg");background-size:cover;background-position:center;}
.stone-swatch.texture-official-ubatuba{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Gto._Verde_Labrador_Ubatuba_Ldo.20_PC04510201_PR.jpg");background-size:cover;background-position:center;}
.stone-swatch.texture-official-limestone{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Limestone_PC4PLSM121_PR.jpeg");background-size:cover;background-position:center;}


/* Etapa 8: nuevas referencias específicas de granito y superficies veteadas. */
.stone-swatch.texture-official-sanfelipe{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Gto._San_Felipe_PC02300201_PR.jpg");background-size:cover;background-position:center;}
.stone-swatch.texture-official-sierrachica{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Gto._Sierra_Chica_PC02210201_PR.jpg");background-size:cover;background-position:center;}
.stone-swatch.texture-official-grismara{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Gto._Gris_Mara_Fdo.20_PC00300201_A1.jpg");background-size:cover;background-position:center;}
.stone-swatch.texture-official-calacattaluxe{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Calacatta_Luxe_PC4L1DU061_PR-scaled.jpg");background-size:cover;background-position:center;}

/* Referencias oficiales adicionales incorporadas en la etapa 9. */
.stone-swatch.texture-official-rojoprincipe{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Gto_Rojo_Principe_PC02000201_PR.png");background-size:cover;background-position:center;}
.stone-swatch.texture-official-beigepuma{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Beige_Puma_PC10310201_PR.jpeg");background-size:cover;background-position:center;}

/* Etapa 10: actualización de dos referencias con enlaces directos verificados en fichas oficiales. */
.stone-swatch.texture-official-calacatta-purastone{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Calacatta_Gold_PC3P14P20J_PR.png");background-size:cover;background-position:center;}
.stone-swatch.texture-official-absoluteblack{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Absolut-Black_PC4PPBM121_PR.webp");background-size:cover;background-position:center;}


/* ETAPA 11: referencias visuales añadidas para granitos importados y la familia Silestone.
   En Silestone son aproximaciones estéticas con imágenes de referencia; no se presentan como fotos del SKU exacto. */
.stone-swatch.texture-ref-black-granite{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/negro_san_benedito_PC0161X20E_pr.jpeg");background-size:cover;background-position:center;}
.stone-swatch.texture-ref-warm-granite{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Bianco_Antico_PC16310201_PR.jpg");background-size:cover;background-position:center;}
.stone-swatch.texture-ref-silestone-white{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Calacatta_C01_PC4C1DK062_PR-scaled.jpg");background-size:cover;background-position:center;}
.stone-swatch.texture-ref-silestone-gold{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Calacatta_Gold_PC3P14P20J_PR.png");background-size:cover;background-position:center;}
.stone-swatch.texture-ref-silestone-dark{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Titanium_Black_-PC4PTBM121_PR.jpeg");background-size:cover;background-position:center;}
.stone-swatch.texture-ref-silestone-grey{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Gto._Metal_Grey_PC0091020A_PR.png");background-size:cover;background-position:center;}


/* ETAPA 12: referencias visuales adicionales para granitos marrones y rojos.
   Son muestras representativas de la familia visual, no fotos confirmadas del SKU exacto. */
.stone-swatch.texture-ref-brown-granite{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Brown_Antique_PC17410201_PR.jpg");background-size:cover;background-position:center;}
.stone-swatch.texture-ref-red-granite{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Gto_Rojo_Principe_PC02000201_PR.png");background-size:cover;background-position:center;}


/* ETAPA 13: referencias adicionales. Statuario usa una imagen publicada en una ficha de producto de De Stefano; Labradorita y Verde Marinace se muestran como texturas cromáticas ilustrativas, no como fotos exactas de producto. */
.stone-swatch.texture-official-statuario-ref{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Statuario_PC3P06M20J_PR.png");background-size:cover;background-position:center;}
.stone-swatch.texture-ref-labradorita{background-color:#222b32;background-image:radial-gradient(ellipse at 22% 30%,rgba(112,145,164,.92) 0 2%,transparent 12%),radial-gradient(ellipse at 67% 63%,rgba(76,112,139,.82) 0 3%,transparent 15%),radial-gradient(ellipse at 78% 18%,rgba(162,177,183,.7) 0 2%,transparent 10%),linear-gradient(135deg,#171d24,#384650 48%,#10161c);background-size:cover;}
.stone-swatch.texture-ref-verde-marinace{background-color:#1f2922;background-image:radial-gradient(ellipse at 12% 25%,#6b6b52 0 4%,transparent 5%),radial-gradient(ellipse at 28% 60%,#424d3c 0 8%,transparent 9%),radial-gradient(ellipse at 55% 28%,#8b8067 0 5%,transparent 6%),radial-gradient(ellipse at 75% 70%,#5d6854 0 9%,transparent 10%),radial-gradient(ellipse at 88% 18%,#a69a7b 0 4%,transparent 5%),linear-gradient(135deg,#172019,#3b4535 50%,#151c17);background-size:cover;}


/* Etapa 14 — referencias visuales directas de fichas de De Stefano.
   Ubatuba corresponde al granito Verde Labrador Ubatuba.
   Statuario es Purastone; se usa solo como referencia estética para diseños claros veteados,
   no como identificación del SKU Silestone. */
.texture-official-ubatuba-direct {
  background-image: url("https://cdn.destefano1913.com/wp-content/uploads/Gto._Verde_Labrador_Ubatuba_Ldo.20_PC04510201_PR.jpg");
  background-size: cover;
  background-position: center;
}
.texture-official-statuario-direct {
  background-image: url("https://cdn.destefano1913.com/wp-content/uploads/Statuario_PC3P06M20J_PR.png");
  background-size: cover;
  background-position: center;
}


/* ETAPA 15: separación correcta de referencias visuales de Silestone.
   White Zeus usa una aproximación clara; Eternal Statuario usa una referencia Statuario del proveedor. */
.stone-swatch.texture-official-statuario-direct{background-image:url("https://cdn.destefano1913.com/wp-content/uploads/Statuario_PC3P06M20J_PR.png");background-size:cover;background-position:center;}
.stone-swatch.texture-ref-silestone-white{background-image:linear-gradient(135deg,rgba(255,255,255,.10),rgba(40,40,40,.06)),url("https://cdn.destefano1913.com/wp-content/uploads/Statuario_PC3P06M20J_PR.png");background-size:cover;background-position:center;}


/* ETAPA 16: etiqueta discreta para aclarar que las imágenes del muestrario son referencias visuales. */
.stone-image-note{display:inline-block;margin:0 0 12px;padding:5px 8px;border:1px solid #e5dfd5;border-radius:2px;color:#716b61;font-size:10px;letter-spacing:.035em;line-height:1.2;background:#f7f6f2;}

/* ETAPA 17 — accesibilidad y navegación móvil */
.menu-btn{min-width:44px;min-height:44px;cursor:pointer;border-radius:6px}
.menu-btn:focus-visible,.desktop-nav a:focus-visible,.btn:focus-visible,.stone-quote-button:focus-visible{outline:3px solid #c9a24a;outline-offset:3px}
.quote-form input:focus-visible,.quote-form select:focus-visible,.quote-form textarea:focus-visible{outline:2px solid #c9a24a;outline-offset:2px}
@media(max-width:1000px){.desktop-nav.mobile-open{display:flex;max-height:calc(100vh - 65px);overflow-y:auto}.desktop-nav.mobile-open a{border-radius:5px}.desktop-nav.mobile-open .nav-cta{margin:8px 0 0;text-align:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* ETAPA 18: estados accesibles del cotizador y alternativa si el navegador bloquea la pestaña. */
.quote-status{grid-column:1/-1;margin:0;color:#e7d6ad;font-size:13px;line-height:1.6;overflow-wrap:anywhere}
.quote-status:empty{display:none}
.whatsapp-fallback-link{display:inline-block;color:#e3bd62;font-weight:700;margin-left:6px;text-decoration:underline;text-underline-offset:3px}
.quote-form input:focus-visible,.quote-form textarea:focus-visible,.quote-form button:focus-visible{outline:2px solid #d7b35d;outline-offset:3px}
@media(max-width:600px){.quote-status{font-size:12px}}

/* Etapa 19: confirmación explícita antes de preparar la solicitud de WhatsApp. */
.quote-consent{display:flex;flex-direction:row!important;align-items:flex-start;gap:10px!important;font-size:12px!important;line-height:1.55;color:#c9c5bc;font-weight:400!important;margin:2px 0!important}
.quote-consent input{flex:0 0 auto;margin-top:3px;accent-color:#c9a24a;width:16px;height:16px}
.quote-consent:focus-within{outline:2px solid #c9a24a;outline-offset:4px;border-radius:2px}

/* Etapa 20: mostrar el teléfono en formato nacional, manteniendo el código internacional solo en el enlace técnico de WhatsApp. */
.footer-phone{margin:0 0 12px;color:var(--stone-gray,#66635E)}
.footer-phone a{color:inherit;text-decoration:underline;text-underline-offset:3px}

/* ETAPA 21 — Galería con las 25 fotos reales aportadas por Marmolería DV */
.project-gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:stretch}
.project-photo{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;border-radius:8px;background:#242321;border:1px solid rgba(201,162,74,.25);isolation:isolate}
.project-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s ease;}
.project-photo:hover img{transform:scale(1.045)}
.project-photo:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.36));pointer-events:none}
.project-photo-number{position:absolute;right:10px;bottom:9px;z-index:1;color:#fff;font-size:11px;letter-spacing:.1em;text-shadow:0 1px 4px #000}
@media(max-width:1000px){.project-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.project-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.project-photo{aspect-ratio:3/4}}

/* Etapa 22: accesibilidad y carga eficiente de la galería real */
.project-photo:focus-visible,.desktop-nav a:focus-visible,.btn:focus-visible,.text-link:focus-visible{outline:3px solid #c9a24a;outline-offset:3px}
.project-photo img{background:#e8e3d9}

/* ETAPA 26 — pie de página premium: contacto claro, jerarquía editorial y acentos dorados discretos */
.site-footer{display:block;padding:0;background:#101010;color:#f6f2e9;overflow:hidden}
.footer-cta-panel{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:58px 7%;background:linear-gradient(115deg,#1c1b19 0%,#121212 62%,#211c12 100%);border-bottom:1px solid rgba(201,162,74,.32);position:relative}
.footer-cta-panel:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(#d9b65f,#8d6826)}
.footer-kicker{color:#c9a24a!important;font-size:10px!important;font-weight:700;letter-spacing:2.4px;margin:0 0 15px!important}
.footer-cta-copy h2{font-family:"Playfair Display",serif;font-size:clamp(32px,4vw,48px);font-weight:500;line-height:1.08;letter-spacing:-.5px;margin:0 0 13px;color:#f8f5ee}
.footer-cta-copy h2 em{font-style:italic;color:#c9a24a}
.footer-cta-copy>p:last-child{max-width:520px;color:#b9b4aa;font-size:13px;line-height:1.8;margin:0}
.footer-cta-button{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:28px;padding:17px 21px;border:1px solid #c9a24a;border-radius:3px;background:linear-gradient(135deg,#d8b866,#b58b35);color:#17130a;text-decoration:none;text-transform:uppercase;font-size:10px;font-weight:800;letter-spacing:1px;transition:transform .2s ease,box-shadow .2s ease}
.footer-cta-button:hover{transform:translateY(-2px);box-shadow:0 10px 26px #c9a24a24}
.footer-main{display:grid;grid-template-columns:1.6fr .8fr 1fr 1.25fr;gap:44px;padding:52px 7% 48px}
.site-footer .footer-brand{display:inline-flex;gap:14px;color:#f5f1e8;text-decoration:none;font-size:12px;letter-spacing:2.5px}
.site-footer .brand-dv{font-size:42px;color:#c9a24a}
.footer-brand-note{font-size:12px!important;line-height:1.8;color:#a7a198!important;margin:19px 0 21px!important;max-width:220px}
.footer-location{display:flex;align-items:center;gap:9px;color:#d0cbc1;font-size:10px;letter-spacing:.5px}
.footer-location-dot{width:6px;height:6px;border-radius:50%;background:#c9a24a;box-shadow:0 0 0 4px #c9a24a20}
.site-footer .footer-column h4,.site-footer .footer-contact-column h4{color:#c9a24a;font-size:10px;letter-spacing:1.8px;margin:5px 0 20px;text-transform:uppercase}
.site-footer .footer-column a{display:block;color:#c2bdb4;text-decoration:none;font-size:11px;margin:0 0 13px;transition:color .2s ease}
.site-footer .footer-column a:hover{color:#e3c16d}
.footer-contact-intro{color:#b9b4aa;font-size:11px;line-height:1.7;margin:0 0 16px}
.footer-whatsapp{display:flex;align-items:center;gap:12px;padding:13px 12px;border:1px solid #39352b;border-radius:4px;color:#f8f4eb;text-decoration:none;transition:border-color .2s ease,background .2s ease}
.footer-whatsapp:hover{border-color:#c9a24a;background:#c9a24a0c}
.footer-whatsapp-icon{width:35px;height:35px;display:grid;place-items:center;border:1px solid #c9a24a;border-radius:50%;font-size:10px;font-weight:800;color:#d6b45f}
.footer-whatsapp b,.footer-whatsapp small{display:block}
.footer-whatsapp b{font-size:11px;letter-spacing:.3px}
.footer-whatsapp small{margin-top:4px;color:#aaa398;font-size:10px}
.footer-contact-arrow{margin-left:auto;color:#c9a24a;font-size:18px}
.footer-socials{display:flex;gap:8px;margin-top:16px}
.footer-socials a{width:32px;height:32px;border:1px solid #464137;border-radius:50%;display:grid;place-items:center;color:#d8d1c5;text-decoration:none;font-size:11px;transition:all .2s ease}
.footer-socials a:hover{border-color:#c9a24a;color:#c9a24a;transform:translateY(-2px)}
.footer-bottom{display:flex;align-items:center;gap:22px;padding:20px 7%;border-top:1px solid #302e29;color:#8f8a80;font-size:9px;letter-spacing:.2px}
.footer-bottom a{color:#aaa397;text-decoration:none;margin:0}
.footer-bottom a:hover{color:#d7b45e}
.footer-bottom-motto{margin-left:auto;color:#b9a77d;font-size:9px;letter-spacing:1.5px}
@media(max-width:1000px){.footer-main{grid-template-columns:1fr 1fr;gap:36px}.footer-cta-panel{padding:48px 6%}.footer-main{padding:44px 6%}.footer-bottom{padding:18px 6%}}
@media(max-width:600px){.footer-cta-panel{display:block;padding:42px 7% 38px}.footer-cta-copy h2{font-size:36px}.footer-cta-copy>p:last-child{font-size:12px}.footer-cta-button{margin-top:24px;width:100%;justify-content:space-between}.footer-main{grid-template-columns:1fr 1fr;gap:30px 20px;padding:36px 7%}.footer-brand-column,.footer-contact-column{grid-column:1/-1}.footer-brand-note{max-width:260px}.site-footer .footer-column h4,.site-footer .footer-contact-column h4{margin-bottom:15px}.site-footer .footer-column a{font-size:11px;margin-bottom:12px}.footer-bottom{padding:18px 7%;display:grid;grid-template-columns:1fr auto;gap:10px}.footer-bottom-motto{grid-column:1/-1;margin-left:0;margin-top:5px;font-size:8px;letter-spacing:1.2px}}
@media(prefers-reduced-motion:reduce){.footer-cta-button,.footer-socials a{transition:none}}

/* Etapa 27: experiencia interactiva “Creá tu mesada” */
.create-countertop{background:#111;color:#f8f5ee;position:relative;overflow:hidden}
.create-countertop:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 15% 0%,#c9a24a16,transparent 48%);pointer-events:none}
.create-countertop-heading{max-width:780px;margin:0 auto 42px;text-align:center;position:relative}
.create-countertop-heading h2{font-size:clamp(42px,5vw,64px);margin:0 0 18px;line-height:1.05}
.create-countertop-heading h2 em{font-style:normal;color:#c9a24a}
.create-countertop-heading>p:last-child{color:#c8c4bc;line-height:1.8;font-size:15px;max-width:670px;margin:0 auto}
.design-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;max-width:1100px;margin:0 auto;position:relative}
.design-option{border:1px solid #ffffff24;border-radius:12px;padding:34px;background:linear-gradient(145deg,#20201e,#151515);min-height:420px;display:flex;flex-direction:column;align-items:flex-start;box-shadow:0 18px 45px #0003}
.design-from-photo{background:linear-gradient(145deg,#29251e,#151515);border-color:#c9a24a66}
.design-option-number{font-size:10px;letter-spacing:2px;color:#c9a24a;font-weight:700}
.design-option-icon{height:58px;width:58px;border:1px solid #c9a24a77;border-radius:50%;display:grid;place-items:center;color:#d4b15c;font-size:29px;margin:26px 0 16px}
.design-option h3{font-family:"Playfair Display",serif;font-size:30px;font-weight:500;margin:0 0 12px}
.design-option p{font-size:13px;line-height:1.8;color:#c7c3bc;margin:0 0 14px}
.design-option ul{list-style:none;padding:0;margin:0 0 26px;color:#e3ded4;font-size:12px;line-height:2}
.design-option li:before{content:"✓";color:#c9a24a;margin-right:10px}
.design-option .btn{margin-top:auto;max-width:100%}
.design-option .btn-outline{background:transparent;border-color:#c9a24a;color:#f5f0e5}
.design-disclaimer{position:relative;max-width:900px;margin:25px auto 0;text-align:center;font-size:11px;line-height:1.7;color:#a9a49a}
@media(max-width:700px){.design-options{grid-template-columns:1fr}.design-option{padding:26px;min-height:0}.create-countertop-heading{text-align:left}.create-countertop-heading>p:last-child{margin:0}.design-option .btn{width:100%}}

/* Cotizador más claro: una pieza inicial y piezas adicionales opcionales */
.pieces-heading{align-items:flex-end}
.pieces-help{font-size:12px!important;line-height:1.6!important;color:#c8c0b3!important;margin:7px 0 0!important;max-width:390px}
.remove-piece[hidden]{display:none!important}
#addPiece{max-width:100%;text-align:center}
.piece-card:focus-within{border-color:#c9a24a;box-shadow:0 0 0 1px #c9a24a33}
@media(max-width:600px){.pieces-heading{align-items:stretch}.pieces-heading>div{width:100%}#addPiece{width:100%}}

/* Etapa 32: historia del fundador y ubicación en Google Maps */
.about-founder{max-width:760px;color:#37352f;font-size:15px;line-height:1.95;margin:0 0 17px}
.about-founder strong{font-weight:650}
.footer-map-link{display:inline-block;margin-top:12px;color:#d7b45e!important;font-size:10px!important;letter-spacing:.5px;text-decoration:none;border-bottom:1px solid #8c7137;padding-bottom:4px}
.footer-map-link:hover{color:#f0d68b!important}
.footer-map-wrap{margin-top:24px}
.footer-map-wrap h4{margin-bottom:12px!important}
.footer-map-card{display:block;overflow:hidden;border:1px solid #474032;border-radius:5px;color:#d9d2c4;text-decoration:none;background:#211f1a}
.footer-map-card iframe{display:block;width:100%;height:150px;border:0;filter:saturate(.72)}
.footer-map-card>span{display:block;padding:11px 12px;font-size:10px;line-height:1.6;color:#e0c16d}
.footer-map-card:hover{border-color:#c9a24a}
@media(max-width:600px){.about-founder{font-size:14px;line-height:1.85}.footer-map-card iframe{height:180px}}

/* Etapa 34: redes y ubicación realmente visibles en el pie de página */
.footer-socials{display:grid;grid-template-columns:1fr;gap:7px;margin:17px 0 0}
.footer-socials a{width:100%;min-height:42px;height:auto;border-radius:4px;display:flex;align-items:center;gap:11px;padding:7px 10px;font-size:11px;letter-spacing:.2px}
.footer-socials a .social-mark{width:25px;height:25px;flex:0 0 25px;border:1px solid #8b7139;border-radius:50%;display:grid;place-items:center;color:#e1c36e;font-size:10px;font-weight:700}
.footer-socials a>span:nth-child(2){flex:1;text-align:left}
.footer-socials a>b{color:#d7b45e;font-weight:500;font-size:15px}
.footer-map-wrap{margin-top:22px}
.footer-map-wrap h4{font-size:10px!important;letter-spacing:1.5px!important;margin-bottom:10px!important}
.footer-map-card{display:block;overflow:hidden;border:1px solid #65532f;border-radius:5px;background:#211f1a}
.footer-map-card iframe{display:block;width:100%;height:190px;border:0;filter:saturate(.85)}
.footer-map-address{display:flex;flex-direction:column;gap:7px;padding:13px 12px;text-decoration:none;color:#f2ead8;background:#1b1a17}
.footer-map-address span{font-size:11px;line-height:1.6}
.footer-map-address b{font-size:10px;letter-spacing:.4px;color:#e0bd62;font-weight:700}
.footer-map-address:hover b{color:#f4d987}
.footer-location{font-size:11px;line-height:1.6}
.footer-map-link{font-size:11px!important}
@media(max-width:600px){.footer-socials{grid-template-columns:1fr}.footer-map-card iframe{height:200px}.footer-map-address span{font-size:12px}}

/* ETAPA 38 — giro 3D de hoja, como pasar la página de un libro */
.hero-image{perspective:1800px;perspective-origin:center center;isolation:isolate}
.hero-image img#heroSlideImage{z-index:1;transform:none;backface-visibility:hidden}
.hero-image img.hero-slide-out{z-index:3;pointer-events:none;backface-visibility:hidden;transform-style:preserve-3d;will-change:transform,filter;box-shadow:0 0 0 rgba(0,0,0,0)}
/* Avanzar: la hoja gira desde el borde izquierdo y descubre la foto siguiente */
.hero-image img.hero-slide-out.slide-out-forward{transform-origin:left center;animation:heroBookTurnForward .95s cubic-bezier(.55,.05,.25,1) both;}
/* Retroceder: la hoja gira desde el borde derecho en sentido contrario */
.hero-image img.hero-slide-out.slide-out-backward{transform-origin:right center;animation:heroBookTurnBackward .95s cubic-bezier(.55,.05,.25,1) both;}
@keyframes heroBookTurnForward{
  0%{transform:rotateY(0deg);filter:brightness(1);box-shadow:0 0 0 rgba(0,0,0,0)}
  35%{filter:brightness(.82);box-shadow:12px 0 28px rgba(0,0,0,.28)}
  65%{filter:brightness(.68);box-shadow:18px 0 32px rgba(0,0,0,.35)}
  100%{transform:rotateY(-100deg);filter:brightness(.58);box-shadow:24px 0 38px rgba(0,0,0,.2)}
}
@keyframes heroBookTurnBackward{
  0%{transform:rotateY(0deg);filter:brightness(1);box-shadow:0 0 0 rgba(0,0,0,0)}
  35%{filter:brightness(.82);box-shadow:-12px 0 28px rgba(0,0,0,.28)}
  65%{filter:brightness(.68);box-shadow:-18px 0 32px rgba(0,0,0,.35)}
  100%{transform:rotateY(100deg);filter:brightness(.58);box-shadow:-24px 0 38px rgba(0,0,0,.2)}
}
.hero-gallery-controls{position:absolute;z-index:5;left:50%;right:auto;top:18px;bottom:auto;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:14px;max-width:calc(100% - 140px)}
.hero-gallery-controls .hero-slide-count{position:static;right:auto;bottom:auto;white-space:nowrap}
.hero-autoplay-control{white-space:nowrap;box-shadow:0 4px 18px #0004}
.hero-autoplay-control{display:inline-flex;align-items:center;gap:9px;padding:8px 11px;border:1px solid #ffffff75;border-radius:24px;background:#080808b8;color:#fff;font-size:10px;letter-spacing:.3px;cursor:pointer;backdrop-filter:blur(6px)}
.hero-autoplay-control input{position:absolute;opacity:0;width:1px;height:1px}
.hero-toggle{width:31px;height:17px;border-radius:20px;background:#68645c;position:relative;transition:background .2s ease;flex:0 0 31px}
.hero-toggle:after{content:"";position:absolute;width:11px;height:11px;top:3px;left:3px;border-radius:50%;background:#fff;transition:transform .2s ease}
.hero-autoplay-control input:checked+.hero-toggle{background:#c9a24a}
.hero-autoplay-control input:checked+.hero-toggle:after{transform:translateX(14px);background:#171511}
.hero-autoplay-control input:focus-visible+.hero-toggle{outline:2px solid #fff;outline-offset:3px}
/* Redes con logotipos reconocibles y centrados; mapa al costado */
.footer-main{grid-template-columns:1.35fr .75fr .85fr 2fr;gap:30px}
.footer-contact-lower{display:grid;grid-template-columns:.8fr 1.2fr;gap:18px;align-items:start;margin-top:18px}
.footer-social-panel h4{margin-bottom:14px!important}
.footer-socials{display:flex;justify-content:center;align-items:center;gap:10px;margin:0;flex-wrap:wrap}
.footer-socials a{width:54px;min-height:54px;height:54px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;border:1px solid #65532f;border-radius:10px;padding:6px;color:#e7dfd0;font-size:9px;text-align:center}
.footer-socials a .social-mark{width:27px;height:27px;flex:0 0 27px;border:0;display:grid;place-items:center;color:#e2c36d}
.footer-socials a .social-mark svg{width:25px;height:25px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.footer-socials a[aria-label="Facebook"] .social-mark svg{fill:currentColor;stroke:none}
.footer-socials a[aria-label="TikTok"] .social-mark svg{fill:currentColor;stroke:none}
.footer-socials a>span:nth-child(2){flex:none;text-align:center}
.footer-socials a>b{display:none}
.footer-map-wrap{margin-top:0}
.footer-map-card iframe{height:155px}
@media(max-width:1100px){.footer-main{grid-template-columns:1.2fr .8fr .8fr 1.7fr;gap:20px}.footer-contact-lower{grid-template-columns:1fr}.footer-socials{justify-content:flex-start}.footer-socials a{width:58px}}
@media(max-width:700px){.hero-gallery-controls{left:50%;right:auto;top:12px;bottom:auto;transform:translateX(-50%);max-width:calc(100% - 100px);gap:8px}.hero-autoplay-control{font-size:9px;padding:7px 9px}.footer-main{grid-template-columns:1fr 1fr}.footer-brand-column,.footer-contact-column{grid-column:1/-1}.footer-contact-lower{grid-template-columns:1fr;gap:22px}.footer-socials{justify-content:center;gap:14px}.footer-socials a{width:72px;height:72px}.footer-socials a .social-mark,.footer-socials a .social-mark svg{width:32px;height:32px}.footer-social-panel h4{text-align:center}.footer-map-card iframe{height:210px}}
@media(prefers-reduced-motion:reduce){.hero-image img.slide-in-forward,.hero-image img.slide-in-backward,.hero-image img.hero-slide-out{animation:none!important}.hero-image img.hero-slide-out{display:none}}


/* ETAPA 37 — tipografía más legible, manteniendo la estética premium */
body{font-size:16px;line-height:1.65}
.desktop-nav a{font-size:13px;letter-spacing:.9px}
.brand-name{font-size:14px}
.eyebrow{font-size:12px;letter-spacing:2px}
.hero-text{font-size:clamp(22px,1.8vw,26px);line-height:1.65}
.btn{font-size:13px;letter-spacing:.65px}
.trust-row{font-size:12px;line-height:1.7}
.section-head h2{font-size:clamp(38px,3.3vw,50px)}
.section-head p:not(.eyebrow){font-size:16px;line-height:1.8}
.text-link{font-size:13px}
.category-card h3{font-size:21px;line-height:1.35}
.category-card span{font-size:12px}
.category-card small{font-size:11px}
.style-card b{font-size:26px}
.style-card small{font-size:14px;line-height:1.5}
.service-grid h3{font-size:25px}
.service-grid p{font-size:15px;line-height:1.75}
.about h2{font-size:clamp(42px,3.5vw,52px)}
.about p{font-size:16px;line-height:1.9}
.steps span{font-size:13px;line-height:1.6}
.quote h2{font-size:clamp(42px,3.5vw,52px)}
.quote p{font-size:16px;line-height:1.85}
.quote input,.quote select{font-size:15px}
.quote-form label{font-size:13px;line-height:1.5}
.quote-points{font-size:15px;line-height:1.9}
.pieces-help{font-size:14px!important}
.piece-step-count{font-size:12px}
.piece-card-head h4{font-size:23px}
.piece-number{font-size:12px}
.perforations legend{font-size:13px}
.form-note{font-size:12px!important;line-height:1.6!important}
.catalog-tools label{font-size:13px}
.stone-family{font-size:11px!important}
.stone-product-info h3{font-size:20px}
.stone-quote-button{font-size:12px}
.project-photo-number{font-size:12px}
.footer-cta-copy>p:last-child{font-size:15px;line-height:1.85}
.footer-kicker{font-size:12px!important}
.footer-cta-button{font-size:12px;letter-spacing:.8px}
.site-footer .footer-column h4,.site-footer .footer-contact-column h4{font-size:12px;letter-spacing:1.5px}
.site-footer .footer-column a{font-size:14px;line-height:1.6;margin-bottom:14px}
.footer-brand-note{font-size:14px!important;line-height:1.85}
.footer-location{font-size:13px;line-height:1.7}
.footer-contact-intro{font-size:14px;line-height:1.8}
.footer-whatsapp b{font-size:14px}
.footer-whatsapp small{font-size:12px}
.footer-socials a{font-size:13px;min-height:46px}
.footer-socials a .social-mark{width:30px;height:30px;flex-basis:30px;font-size:13px}
.footer-map-wrap h4{font-size:12px!important}
.footer-map-address span{font-size:14px;line-height:1.7}
.footer-map-address b{font-size:12px}
.footer-map-link{font-size:13px!important}
.footer-bottom{font-size:11px;line-height:1.6}
.footer-bottom-motto{font-size:11px}
.create-countertop-heading>p:last-child{font-size:17px;line-height:1.85}
.design-option-number{font-size:12px}
.design-option h3{font-size:32px}
.design-option p{font-size:15px;line-height:1.85}
.design-option ul{font-size:14px;line-height:1.9}
.design-disclaimer{font-size:13px;line-height:1.8}
.about-founder{font-size:17px;line-height:1.95}
@media(max-width:1000px){
 .desktop-nav a{font-size:14px}
 .category-card h3{font-size:20px}
 .footer-main{gap:34px}
}
@media(max-width:600px){
 body{font-size:16px}
 .brand-name{font-size:10px}
 .hero h1{font-size:clamp(42px,10vw,50px);line-height:1.04}
 .hero-text{font-size:21px;line-height:1.7}
 .eyebrow{font-size:11px;letter-spacing:1.8px}
 .btn{font-size:13px;padding:16px 20px}
 .section{padding:58px 6%}
 .section-head h2{font-size:35px;line-height:1.12}
 .section-head p:not(.eyebrow){font-size:15px;line-height:1.8}
 .text-link{font-size:12px}
 .category-card h3{font-size:18px;line-height:1.35}
 .category-card span{font-size:11px;padding:7px 10px}
 .style-card{padding:20px;min-height:165px}
 .style-card b{font-size:22px}
 .style-card small{font-size:13px}
 .service-grid h3{font-size:21px}
 .service-grid p{font-size:14px;line-height:1.75}
 .about h2,.quote h2{font-size:36px;line-height:1.12}
 .about p,.quote p{font-size:15px;line-height:1.85}
 .steps span{font-size:12px}
 .quote{padding:55px 7%}
 .quote input,.quote select{font-size:16px;padding:15px}
 .quote-form label{font-size:13px}
 .pieces-help{font-size:13px!important}
 .piece-nav-button{font-size:12px;padding:11px 10px}
 .piece-step-count{font-size:11px}
 .piece-card-head h4{font-size:21px}
 .catalog-tools label{font-size:12px}
 .stone-product-info h3{font-size:18px}
 .footer-cta-copy h2{font-size:34px;line-height:1.15}
 .footer-cta-copy>p:last-child{font-size:14px;line-height:1.8}
 .footer-cta-button{font-size:12px}
 .site-footer .footer-column h4,.site-footer .footer-contact-column h4{font-size:12px}
 .site-footer .footer-column a{font-size:14px;line-height:1.65}
 .footer-brand-note{font-size:14px!important}
 .footer-contact-intro{font-size:14px}
 .footer-socials a{font-size:14px;min-height:48px}
 .footer-map-address span{font-size:14px}
 .footer-map-address b{font-size:12px}
 .footer-bottom{font-size:11px}
 .footer-bottom-motto{font-size:10px;letter-spacing:1px}
 .create-countertop-heading h2{font-size:clamp(36px,9vw,46px)}
 .create-countertop-heading>p:last-child{font-size:15px;line-height:1.8}
 .design-option h3{font-size:28px}
 .design-option p{font-size:15px;line-height:1.8}
 .design-option ul{font-size:14px}
 .design-disclaimer{font-size:12px}
 .about-founder{font-size:15px;line-height:1.9}
}
