:root {
      --black:#151515;
      --charcoal:#222;
      --cream:#f4f0e8;
      --paper:#fbfaf7;
      --tan:#b6763f;
      --tan-dark:#8e542a;
      --gold:#d99a5b;
      --muted:#716c65;
      --line:#ddd6cc;
      --white:#fff;
      --max:1200px;
    }
    *{box-sizing:border-box;margin:0;padding:0}
    html{scroll-behavior:smooth}
    body{font-family:Arial,Helvetica,sans-serif;background:var(--paper);color:var(--black);line-height:1.6}
    a{color:inherit;text-decoration:none}
    img{width:100%;height:100%;object-fit:cover;display:block}
    .about-photo img,.focus-card img,.showcase-photo img,.g img,.why-photo img{position:absolute;inset:0}
    .container{width:min(var(--max),calc(100% - 40px));margin:auto}
    .eyebrow{font-size:.73rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--tan-dark);margin-bottom:14px}
    .title{font-family:Georgia,"Times New Roman",serif;font-weight:500;font-size:clamp(2.2rem,4.8vw,4.6rem);line-height:1.04;letter-spacing:-.035em}
    .lead{font-size:1.06rem;color:var(--muted);max-width:690px}
    .btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 24px;border:1px solid var(--black);font-size:.8rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;transition:.2s}
    .btn-dark{background:var(--black);color:#fff}
    .btn-dark:hover{background:var(--tan-dark);border-color:var(--tan-dark)}
    .btn-light{border-color:#fff;color:#fff}
    .btn-light:hover{background:#fff;color:var(--black)}

    .topbar{background:var(--black);color:#fff;padding:8px 0;font-size:.72rem;text-transform:uppercase;letter-spacing:.11em}
    .topbar .container{display:flex;justify-content:space-between;gap:20px}

    header{position:sticky;top:0;z-index:50;background:rgba(21,21,21,.97);border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(12px)}
    .nav{height:94px;display:flex;align-items:center;justify-content:space-between;gap:24px}
    .brand{display:flex;align-items:center;gap:12px}
    .brand-mark{display:block;width:64px;height:64px;object-fit:contain;flex-shrink:0}
    nav ul{display:flex;gap:28px;list-style:none;align-items:center}
    nav a{font-size:.76rem;text-transform:uppercase;letter-spacing:.09em;font-weight:700;color:#fff}
    nav a:hover{color:var(--tan)}
    nav a.active{color:var(--gold)}
    .menu{display:none;background:none;border:0;cursor:pointer;width:42px;height:42px}
    .menu span{display:block;width:24px;height:1px;background:#fff;margin:6px auto}

    .hero{min-height:740px;position:relative;display:grid;align-items:end;color:white;overflow:hidden;background:var(--black)}
    .hero-slide{position:absolute;inset:0;opacity:0;animation:heroSlide 24s infinite}
    @keyframes heroSlide{
      0%{opacity:0;transform:scale(1)}
      6%{opacity:1}
      27%{opacity:1}
      33.333%{opacity:0;transform:scale(1.06)}
      100%{opacity:0;transform:scale(1.06)}
    }
    @media(prefers-reduced-motion:reduce){.hero-slide{animation:none;opacity:1;transform:none}.hero-slide:not(:first-child){display:none}}
    .hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,12,12,.86) 0%,rgba(12,12,12,.55) 48%,rgba(12,12,12,.16) 78%)}
    .hero-content{position:relative;z-index:2;padding:120px 0 90px;max-width:850px}
    .hero .eyebrow{color:#dfb78f}
    .hero h1{font-family:Georgia,serif;font-weight:500;font-size:clamp(3.4rem,7vw,7.2rem);line-height:.92;letter-spacing:-.05em;margin-bottom:26px}
    .hero p{font-size:1.13rem;color:rgba(255,255,255,.84);max-width:660px;margin-bottom:34px}
    .actions{display:flex;gap:12px;flex-wrap:wrap}

    .focus{padding:100px 0}
    .focus-head{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:start;margin-bottom:52px}
    .focus-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
    .focus-card{position:relative;min-height:520px;overflow:hidden;background:#ddd;border-radius:12px;border:1px solid var(--gold)}
    .focus-card:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(0,0,0,.75))}
    .focus-card .content{position:absolute;z-index:2;left:28px;right:28px;bottom:27px;color:#fff}
    .focus-card h3{font-family:Georgia,serif;font-size:2rem;font-weight:500;margin-bottom:8px}
    .focus-card p{color:rgba(255,255,255,.78);font-size:.93rem}

    .about{padding:100px 0;background:var(--cream)}
    .about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
    .about-photo{position:relative;min-height:580px;overflow:hidden;border-radius:12px;border:1px solid var(--gold)}
    .about-copy p{color:var(--muted);margin:20px 0}
    .about-more{margin-top:12px}
    .promise{margin-top:32px;padding-top:26px;border-top:1px solid #cabfb0;font-family:'Dancing Script',cursive;font-weight:600;color:var(--tan-dark);font-size:2.1rem;line-height:1.3}

    .services{padding:100px 0}
    .section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:45px}
    .service-list{border-top:1px solid var(--line)}
    .service-row{display:grid;grid-template-columns:1fr 1.4fr;gap:25px;padding:27px 0;border-bottom:1px solid var(--line);align-items:start}
    .service-no{font-family:Georgia,serif;color:var(--tan-dark)}
    .service-row h3{font-family:Georgia,serif;font-size:1.35rem;font-weight:500}
    .service-row p{color:var(--muted);font-size:.94rem}

    .showcase{display:grid;grid-template-columns:1fr 1fr;min-height:680px;background:var(--black);color:#fff}
    .showcase-photo{position:relative;min-height:600px;overflow:hidden}
    .showcase-copy{padding:80px clamp(40px,7vw,110px);display:flex;flex-direction:column;justify-content:center}
    .showcase-copy .eyebrow{color:#ddb183}
    .showcase-copy p{color:rgba(255,255,255,.72);margin:24px 0 30px}
    .detail-list{border-top:1px solid rgba(255,255,255,.18)}
    .detail-list div{display:flex;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.18)}
    .detail-list span:last-child{color:rgba(255,255,255,.58);font-size:.84rem}

    .materials{padding:100px 0}
    .materials-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:75px;align-items:start}
    .materials-copy p{color:var(--muted);margin-top:22px}
    .swatches{display:grid;grid-template-columns:1fr 1fr;gap:14px}
    .swatch{height:260px;position:relative;overflow:hidden;border-radius:10px;border:1px solid var(--gold)}
    .swatch span{position:absolute;left:18px;bottom:16px;background:rgba(20,20,20,.76);color:#fff;padding:8px 11px;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}

    .gallery{padding:100px 0;background:var(--cream)}
    .gallery-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-template-rows:330px 330px;gap:14px;margin-top:44px}
    .g{position:relative;overflow:hidden;background:#ddd;border-radius:10px;border:1px solid var(--gold)}
    .g:first-child{grid-row:1/3}
    .g:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 55%,rgba(0,0,0,.65))}
    .g-label{position:absolute;z-index:2;left:20px;bottom:18px;color:white}
    .g-label strong{font-family:Georgia,serif;font-size:1.15rem;font-weight:500}
    .g-label small{display:block;color:rgba(255,255,255,.72);margin-top:2px}

    .why{padding:100px 0}
    .why-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:70px}
    .why-photo{position:relative;margin-top:36px;min-height:420px;overflow:hidden;border-radius:12px;border:1px solid var(--gold)}
    .reasons{border-top:1px solid var(--line)}
    .reason{display:grid;grid-template-columns:44px 1fr;gap:18px;padding:22px 0;border-bottom:1px solid var(--line)}
    .reason-icon{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--gold);display:flex;align-items:center;justify-content:center;flex-shrink:0}
    .reason-icon svg{width:22px;height:22px;stroke:var(--tan-dark)}
    .reason h3{font-family:Georgia,serif;font-size:1.23rem;font-weight:500;margin-bottom:4px}
    .reason p{font-size:.92rem;color:var(--muted)}

    .commitment{padding:100px 0;background:#c49a73}
    .commitment blockquote{font-family:Georgia,serif;font-size:clamp(2rem,4vw,4.4rem);line-height:1.05;letter-spacing:-.03em;max-width:1000px}
    .commitment p{margin-top:28px;max-width:690px;color:#4d3b2e}

    .cta{padding:95px 0;background:var(--tan-dark);color:#fff}
    .cta-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:start}
    .cta-actions{display:flex;align-items:center;justify-content:flex-end;height:100%}
    .cta .eyebrow{color:#efd5bd}
    .cta p{color:rgba(255,255,255,.78);margin-top:22px;max-width:650px}

    .cta-form-wrap{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.25);padding:36px}
    .cta-form{display:flex;flex-direction:column;gap:16px}
    .form-field label{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px;color:rgba(255,255,255,.85)}
    .form-field input,.form-field select,.form-field textarea{width:100%;padding:12px 14px;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.95);color:var(--black);font-family:inherit;font-size:.92rem}
    .form-field textarea{resize:vertical}
    .form-error{display:block;color:#ffd6d6;font-size:.78rem;margin-top:4px}
    .form-message{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.4);padding:14px 18px;margin-bottom:20px;font-size:.9rem}
    .form-message.error{background:rgba(120,20,20,.35);border-color:rgba(255,180,180,.6);color:#ffe0e0}
    .cta-form button{align-self:flex-start;margin-top:6px}

    .whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:60;width:58px;height:58px;background:#25D366;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(0,0,0,.3);transition:.2s}
    .whatsapp-float:hover{transform:scale(1.08);box-shadow:0 8px 22px rgba(0,0,0,.38)}
    .whatsapp-float svg{width:28px;height:28px;fill:#fff}
    @media(max-width:680px){.whatsapp-float{width:52px;height:52px;right:16px;bottom:16px}.whatsapp-float svg{width:25px;height:25px}}

    .back-to-top{position:fixed;right:22px;bottom:90px;z-index:60;width:46px;height:46px;background:var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(0,0,0,.3);transition:.25s;opacity:0;visibility:hidden;transform:translateY(8px)}
    .back-to-top.show{opacity:1;visibility:visible;transform:translateY(0)}
    .back-to-top:hover{background:var(--tan-dark);transform:translateY(-2px)}
    .back-to-top svg{width:20px;height:20px}
    @media(max-width:680px){.back-to-top{width:42px;height:42px;right:16px;bottom:76px}}

    footer{background:#111;color:#fff;padding:65px 0 24px}
    .footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:60px;padding-bottom:50px;border-bottom:1px solid rgba(255,255,255,.14)}
    .footer-name{font-family:Georgia,serif;font-size:2.4rem;margin-bottom:13px}
    .footer-mark{width:96px;height:96px;object-fit:contain;margin-bottom:16px}
    footer p,footer a{color:rgba(255,255,255,.62);font-size:.89rem}
    .footer-script{font-family:'Dancing Script',cursive;font-weight:600;color:var(--gold);font-size:1.5rem;margin-top:14px}
    footer h4{font-size:.7rem;text-transform:uppercase;letter-spacing:.13em;margin-bottom:15px}
    .links{display:grid;gap:9px}
    .bottom{padding-top:21px;display:flex;justify-content:space-between;gap:20px;font-size:.77rem;color:rgba(255,255,255,.42)}

    @media(max-width:980px){
      nav ul{position:fixed;top:94px;left:0;right:0;background:var(--black);padding:25px 20px 30px;display:none;flex-direction:column;align-items:flex-start;border-bottom:1px solid rgba(255,255,255,.12)}
      nav ul.open{display:flex}
      .menu{display:block}
      .nav>.btn{display:none}
      .focus-head,.about-grid,.materials-grid,.why-grid,.cta-grid{grid-template-columns:1fr;gap:40px}
      .section-head{flex-direction:column;align-items:flex-start;gap:16px}
      .service-row{grid-template-columns:1fr;gap:8px}
      .focus-grid{grid-template-columns:1fr 1fr}
      .focus-card:last-child{grid-column:1/3}
      .showcase{grid-template-columns:1fr}
      .gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:390px 300px 300px}
      .g:first-child{grid-column:1/3;grid-row:auto}
    }
    @media(max-width:680px){
      .container{width:min(var(--max),calc(100% - 28px))}
      .topbar .container{justify-content:center}
      .topbar span:last-child{display:none}
      .hero{min-height:650px}
      .hero h1{font-size:3.45rem}
      .hero-content{padding:100px 0 70px}
      .focus,.about,.services,.materials,.gallery,.why{padding:75px 0}
      .focus-grid{grid-template-columns:1fr}
      .focus-card,.focus-card:last-child{grid-column:auto;min-height:440px}
      .showcase-copy{padding:65px 28px}
      .swatches{grid-template-columns:1fr}
      .swatch{height:300px}
      .gallery-grid{grid-template-columns:1fr;grid-template-rows:auto}
      .g,.g:first-child{grid-column:auto;min-height:340px}
      .footer-grid{grid-template-columns:1fr;gap:34px}
      .bottom{flex-direction:column}
    }
