*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:#222;background:#f7f6f3;line-height:1.65}a{color:inherit;text-decoration:none}.container{width:min(1160px,calc(100% - 40px));margin:auto}.site-header{position:fixed;top:0;left:0;right:0;z-index:20;background:rgba(20,20,20,.94);backdrop-filter:blur(12px);color:#fff}.nav-wrap{height:78px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:40px;height:40px;border:1px solid #aaa;display:grid;place-items:center;font-family:"Cormorant Garamond",serif;font-size:25px}.brand strong{display:block;letter-spacing:4px;font-size:16px}.brand small{display:block;font-size:9px;letter-spacing:2px;text-transform:uppercase;color:#aaa}.nav{display:flex;align-items:center;gap:28px;font-size:13px}.nav a{opacity:.86}.nav a:hover{opacity:1}.nav-cta{padding:10px 17px;border:1px solid #777}.menu-toggle{display:none;background:none;border:0;color:#fff;font-size:25px}.hero{min-height:760px;display:flex;align-items:center;position:relative;background:linear-gradient(90deg,rgba(0,0,0,.82),rgba(0,0,0,.25)),url("images/hero.jpg") center/cover,#292929;color:#fff}.hero-content{position:relative;z-index:2;padding-top:70px}.eyebrow{font-size:11px;letter-spacing:3px;font-weight:700;margin:0 0 15px;color:#b9b3a8}.eyebrow.dark{color:#746e64}.hero h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif}.hero h1{font-size:clamp(55px,8vw,100px);line-height:.9;font-weight:500;margin:0 0 28px}.hero h1 em{font-weight:500;color:#d1cbc0}.hero-text{max-width:560px;font-size:17px;color:#ddd}.hero-actions{display:flex;gap:12px;margin-top:35px}.btn{display:inline-flex;justify-content:center;align-items:center;padding:14px 24px;font-size:12px;letter-spacing:1.3px;text-transform:uppercase;font-weight:700;border:1px solid transparent;cursor:pointer}.btn-light{background:#f2efe9;color:#171717}.btn-outline{border-color:#aaa;color:#fff}.btn-dark{background:#1d1d1b;color:#fff}.section{padding:105px 0}.intro{background:#ece9e2}.intro-grid,.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.intro h2,.section-heading h2,.about h2,.contact h2{font-size:clamp(45px,5vw,68px);line-height:1;margin:0}.intro p{font-size:19px;max-width:560px}.section-heading{max-width:650px;margin-bottom:50px}.section-heading.centered{text-align:center;margin-left:auto;margin-right:auto}.section-heading>p:last-child{color:#6b675f}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#d5d1c9}.service-card{background:#f7f6f3;padding:35px 28px;min-height:310px;display:flex;flex-direction:column}.service-card.featured{background:#ebe8e0}.service-number{font-size:11px;letter-spacing:2px;color:#888;margin-bottom:45px}.service-card h3{font-size:30px;line-height:1.1;margin:0 0 12px}.service-card p{font-size:14px;color:#666}.service-card a{margin-top:auto;font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.dark-section{background:#191918;color:#fff}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.dark-section h2{font-size:clamp(48px,5vw,70px);line-height:.95;margin:0 0 25px}.dark-section p{color:#bbb;max-width:550px}.check-list{list-style:none;padding:0;margin:28px 0 35px}.check-list li{border-top:1px solid #3b3b38;padding:11px 0;color:#ddd}.check-list li:before{content:"✓";margin-right:12px;color:#aaa}.stone-placeholder,.gallery-item{background:linear-gradient(135deg,#3d3c38,#1e1e1c);min-height:500px;display:grid;place-items:center;color:#aaa;letter-spacing:2px;text-align:center;font-size:11px}.gallery{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.gallery-item{min-height:260px}.gallery-item.large{grid-column:span 2}.about{background:#ebe8e1}.values{display:grid;grid-template-columns:1fr 1fr;gap:38px}.values b{font-size:11px;color:#8a847a}.values h3{font-size:27px;margin:5px 0}.values p{font-size:14px;color:#666;margin:0}.cta-band{background:#282724;color:#fff;padding:70px 0}.cta-content{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta-content h2{font-family:"Cormorant Garamond",serif;font-size:52px;margin:0;line-height:1}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.contact h2{margin-bottom:25px}.contact-details{margin-top:35px;display:grid;gap:18px}.contact-details a,.contact-details div{display:block;border-top:1px solid #d6d2ca;padding-top:13px}.contact-details span{display:block;text-transform:uppercase;letter-spacing:1.5px;font-size:10px;color:#888;margin-bottom:3px}.contact-form{background:#ebe8e1;padding:35px}.contact-form label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin-bottom:18px}.contact-form input,.contact-form textarea{display:block;width:100%;border:1px solid #ccc;background:#f7f6f3;padding:13px;margin-top:7px;font:inherit;outline:none}.contact-form input:focus,.contact-form textarea:focus{border-color:#555}.contact-form small{display:block;color:#777;font-size:10px;margin-top:12px}.footer{background:#151514;color:#aaa;padding:70px 0 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:60px}.footer p{max-width:380px;font-size:13px}.footer h4{color:#fff;text-transform:uppercase;letter-spacing:2px;font-size:10px}.footer-grid a,.footer-grid span{display:block;font-size:13px;margin:7px 0}.footer-brand{color:#fff}.copyright{border-top:1px solid #333;margin-top:50px;padding-top:20px;font-size:10px;color:#666}.mobile-call{display:none}
@media(max-width:850px){.nav{position:absolute;display:none;top:78px;left:0;right:0;background:#171716;padding:20px;flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.nav a{padding:14px 0;border-bottom:1px solid #333}.menu-toggle{display:block}.service-grid{grid-template-columns:1fr 1fr}.intro-grid,.about-grid,.split,.contact-grid{grid-template-columns:1fr;gap:45px}.gallery{grid-template-columns:1fr 1fr}.gallery-item.large{grid-column:span 2}.stone-placeholder{min-height:360px}.footer-grid{grid-template-columns:1fr 1fr}.mobile-call{display:block;position:fixed;bottom:15px;left:15px;right:15px;background:#1c1c1b;color:#fff;text-align:center;padding:13px;z-index:15;font-size:12px;text-transform:uppercase;letter-spacing:1px}}
@media(max-width:560px){.container{width:min(100% - 28px,1160px)}.hero{min-height:700px}.hero h1{font-size:55px}.hero-text{font-size:15px}.hero-actions{flex-direction:column;align-items:stretch}.section{padding:75px 0}.service-grid,.values,.gallery{grid-template-columns:1fr}.gallery-item.large{grid-column:span 1}.gallery-item{min-height:220px}.footer-grid{grid-template-columns:1fr}.cta-content{align-items:flex-start;flex-direction:column}.cta-content h2{font-size:43px}.contact-form{padding:22px}.stone-placeholder{min-height:280px}}

/* MEMORIA branding */
.price-note{margin:26px 0 20px!important;padding:15px 18px;border-left:2px solid #b9b3a8;background:#242422;color:#eee!important;font-size:15px}.price-note strong{display:block;font-family:Inter,Arial,sans-serif;font-size:28px;font-weight:700;line-height:1.2;letter-spacing:.4px;color:#fff}
.hero{background-image:linear-gradient(90deg,rgba(0,0,0,.82),rgba(0,0,0,.25)),url("images/hero-v3.png");background-position:60% center}
@media(min-width:851px){
  .service-grid{grid-template-columns:repeat(3,1fr)}
}
.split{grid-template-columns:1fr}
.brand-logo{width:58px;height:58px;object-fit:contain;display:block}
.brand-text{display:block}
.gallery-item.photo-item{padding:0;overflow:hidden;background:#222}
.gallery-item.photo-item img{width:100%;height:100%;min-height:260px;object-fit:cover;display:block}
@media(max-width:850px){
  .brand-logo{width:52px;height:52px}
}
