:root{
  --black:#0b0a08;
  --dark:#161310;
  --gold:#c79a4b;
  --gold-light:#e4c37a;
  --cream:#f5efe4;
  --paper:#fffaf2;
  --ink:#211c16;
  --muted:#766b5d;
  --line:rgba(199,154,75,.35);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Heebo,Assistant,Arial,sans-serif;background:var(--black);color:#fff;line-height:1.7}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.container{width:min(1180px,92vw);margin:auto}
.site-header{position:fixed;inset:0 0 auto;z-index:20;background:rgba(12,10,8,.82);border-bottom:1px solid rgba(255,255,255,.1);backdrop-filter:blur(14px)}
.nav-wrap{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.brand{display:flex;align-items:center;gap:12px;min-width:max-content}
.logo-mark{width:52px;height:52px;border:1px solid var(--gold);display:grid;place-items:center;font-size:27px;font-weight:900;color:var(--gold-light)}
.brand strong{display:block;font-size:18px}.brand em{font-style:normal;color:var(--gold-light);font-size:19px;font-weight:800}
.main-nav{display:flex;gap:20px;font-weight:700;align-items:center}.main-nav a:hover{color:var(--gold-light)}
.phone-link,.whatsapp-nav{border:1px solid var(--gold);padding:10px 16px;font-weight:900;white-space:nowrap}.phone-link{background:linear-gradient(135deg,var(--gold-light),#9e7131);color:#170f08}.whatsapp-nav{color:var(--gold-light)}
.hero{position:relative;min-height:780px;padding-top:78px;overflow:hidden}
.hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.12),rgba(0,0,0,.82) 58%),url("optimized/hero-door.webp") center/cover no-repeat;transform:scale(1.02)}
.hero::after{content:"";position:absolute;inset:auto 0 0;height:34%;background:linear-gradient(0deg,var(--black),transparent)}
.hero-inner{position:relative;z-index:2;min-height:702px;display:grid;grid-template-columns:1fr 340px;gap:44px;align-items:center}
.eyebrow,.section-kicker{color:var(--gold-light);font-weight:900;letter-spacing:.03em}
.hero h1,.page-hero h1{font-size:clamp(48px,7vw,94px);line-height:1.04;margin:14px 0;color:#fff;max-width:760px}
.hero-text,.page-hero p{font-size:22px;max-width:650px;color:#f4eee5}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:13px 26px;border:1px solid var(--gold);font-weight:900;transition:.2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg,var(--gold-light),#9c7134);color:#170f08}.btn-outline{background:rgba(0,0,0,.34);color:#fff}
.hero-panel{border:1px solid var(--line);background:rgba(13,11,9,.72);padding:28px;box-shadow:0 24px 90px rgba(0,0,0,.38)}.hero-panel span,.hero-panel small{color:#d5c8b4}.hero-panel strong{display:block;font-size:28px;line-height:1.25;margin:10px 0;color:#fff}
.trust-strip{background:#11100e;border-block:1px solid rgba(255,255,255,.08)}.trust-grid{display:grid;grid-template-columns:repeat(5,1fr)}.trust-grid div{padding:22px 18px;border-left:1px solid rgba(255,255,255,.08);display:grid;gap:6px;justify-items:start}.trust-grid strong{display:block;color:var(--gold-light);font-size:18px}.trust-grid small{color:#d7d0c4;font-size:15px}.mini-icon,.service-icon{color:var(--gold-light);width:42px;height:42px;display:grid;place-items:center}.mini-icon svg,.service-icon svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.section{padding:88px 0}.services{background:var(--cream);color:var(--ink)}.section-title{max-width:760px}.section-title.center{text-align:center;margin-inline:auto}.section-title h2,.split h2,.category-heading h2{font-size:clamp(32px,4.5vw,54px);line-height:1.14;margin:0}.section-title p{color:var(--muted)}.cards-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:34px}.service-card{background:var(--paper);border:1px solid #e6d8c4;padding:24px;min-height:265px}.service-card .service-icon{background:#24180d;border:1px solid var(--gold);margin-bottom:16px}.service-card h3{font-size:24px;margin:0 0 12px;color:#5b3b12}.service-card p{color:#4c4439;margin:0}
.gallery-section{background:#171411}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:38px}.home-gallery{grid-template-columns:repeat(4,1fr)}.gallery-item{margin:0;position:relative;min-height:310px;overflow:hidden;border:1px solid rgba(255,255,255,.14);background:#0e0d0b}.gallery-item img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.gallery-item::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.72),transparent 58%)}.gallery-item figcaption{position:absolute;z-index:2;right:16px;bottom:14px;font-weight:800;color:#fff}.action-row{margin-top:34px}.center{text-align:center}
.about-section{background:var(--paper);color:var(--ink)}.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}.rich-text{font-size:20px;color:#493f33}
.testimonials{background:#111;color:#fff}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:34px}.testimonial-grid blockquote{margin:0;border:1px solid var(--line);background:rgba(255,255,255,.055);padding:28px;font-size:19px;min-height:190px}.testimonial-grid p{margin:0}.testimonial-grid cite{display:block;margin-top:20px;color:var(--gold-light);font-style:normal;font-weight:800}
.contact-band{padding:80px 0;background:linear-gradient(135deg,#100e0c,#211911);border-top:1px solid var(--line)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.contact-info h2{font-size:44px;line-height:1.14;margin:0 0 14px}.contact-list{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:10px;font-size:20px}.contact-list a{color:var(--gold-light);font-weight:900}.whatsapp-panel{background:rgba(255,255,255,.06);border:1px solid var(--line);padding:34px}.whatsapp-panel h3{font-size:34px;margin:0 0 10px;color:var(--gold-light)}.whatsapp-panel p{font-size:20px;color:#ddd}.full{width:100%;margin-top:12px}
.page-hero{padding:170px 0 90px;background:linear-gradient(90deg,rgba(0,0,0,.18),rgba(0,0,0,.82)),url("archive-media/gallery-01.jpg") center/cover no-repeat}.gallery-page-hero{border-bottom:1px solid var(--line)}.full-gallery-page{padding-top:60px}.gallery-category{padding:34px 0 54px;border-bottom:1px solid rgba(255,255,255,.1)}.gallery-category:last-child{border-bottom:0}.category-heading{display:flex;justify-content:space-between;gap:24px;align-items:end}.category-heading .section-kicker{margin:0}
.site-footer{background:#080706;color:#b8afa2;padding:24px 0}.footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.floating-whatsapp{position:fixed;left:22px;bottom:22px;z-index:30;background:linear-gradient(135deg,#2fd56f,#148344);color:#061408;padding:14px 20px;border-radius:999px;font-weight:900;box-shadow:0 14px 38px rgba(0,0,0,.35)}
@media(max-width:1100px){.cards-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid,.home-gallery{grid-template-columns:repeat(3,1fr)}.trust-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.main-nav,.whatsapp-nav{display:none}.hero-inner,.split,.contact-grid{grid-template-columns:1fr}.hero-panel{display:none}.trust-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid,.home-gallery{grid-template-columns:repeat(2,1fr)}.hero{min-height:700px}.hero-inner{min-height:622px}.testimonial-grid{grid-template-columns:1fr}.category-heading{display:block}.cards-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.nav-wrap{min-height:68px}.logo-mark{width:44px;height:44px}.brand em{font-size:16px}.phone-link{padding:9px 11px}.hero h1,.page-hero h1{font-size:42px}.hero-text,.page-hero p{font-size:18px}.hero-actions .btn{width:100%}.trust-grid,.cards-grid,.gallery-grid,.home-gallery{grid-template-columns:1fr}.section{padding:62px 0}.gallery-item{min-height:360px}.contact-info h2{font-size:34px}.floating-whatsapp{left:14px;bottom:14px}.page-hero{padding-top:130px}}


/* Real testimonials */
.testimonials{background:var(--cream);color:var(--ink)}
.testimonials .section-title p{color:var(--muted)}
.real-testimonials{grid-template-columns:repeat(3,1fr)}
.testimonial-card{position:relative;background:#fff;border:1px solid rgba(199,154,75,.42);box-shadow:0 18px 45px rgba(54,35,12,.09);padding:30px;min-height:290px;display:flex;flex-direction:column;gap:18px}
.testimonial-card .quote-mark{position:absolute;top:14px;left:22px;color:var(--gold);font-size:72px;line-height:1;font-family:Georgia,serif;opacity:.32}
.testimonial-card p{margin:28px 0 0;color:#342b20;font-size:18px;line-height:1.85}
.testimonial-card footer{display:grid;gap:3px;margin-top:auto;color:#2a2117}
.testimonial-card footer strong{font-size:19px}.testimonial-card footer span{color:#7c6b55;font-size:15px}
.source-link{align-self:flex-start;border:1px solid rgba(199,154,75,.58);background:#fff7e8;color:#5a3710;padding:8px 13px;font:inherit;font-weight:800;cursor:pointer}
.source-link:hover{background:#f1dfbd}
.lightbox{position:fixed;inset:0;z-index:80;background:rgba(7,5,3,.82);display:none;align-items:center;justify-content:center;padding:26px}
.lightbox.is-open{display:flex}.lightbox img{max-width:min(980px,92vw);max-height:88vh;border-radius:12px;box-shadow:0 26px 90px rgba(0,0,0,.5);background:#fff}.lightbox-close{position:absolute;top:22px;left:24px;width:44px;height:44px;border:1px solid var(--gold);background:#120d08;color:#fff;font-size:30px;cursor:pointer}
.recommendations-hero{background:linear-gradient(90deg,rgba(0,0,0,.18),rgba(0,0,0,.82)),url("testimonials/testimonial-01-oshrat-nadav.jpg") center/cover no-repeat}
.recommendations-page{background:var(--cream);color:var(--ink)}
.recommendations-list{display:grid;gap:30px}
.recommendation-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,420px);gap:26px;align-items:start;background:rgba(255,255,255,.42);border:1px solid #e7d9c1;padding:22px}
.testimonial-card.full-card{min-height:unset;height:100%}
.testimonial-proof{margin:0}.testimonial-proof img{width:100%;max-width:420px;border-radius:12px;border:1px solid rgba(80,52,22,.16);box-shadow:0 14px 36px rgba(60,37,12,.16);background:#fff}.testimonial-proof figcaption{margin-top:9px;color:#74634e;font-size:14px;text-align:center}
@media(max-width:900px){.real-testimonials{grid-template-columns:repeat(2,1fr)}.recommendation-row{grid-template-columns:1fr}.testimonial-proof img{max-width:100%}}
@media(max-width:560px){.real-testimonials{grid-template-columns:1fr}.testimonial-card{min-height:unset}.source-link{width:100%;justify-content:center}.lightbox{padding:14px}.lightbox-close{top:12px;left:12px}}


/* One-row home carousels */
.carousel-shell{position:relative;margin-top:38px}
.carousel-track{display:flex;gap:18px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:2px 0 16px;direction:ltr}
.carousel-track::-webkit-scrollbar{display:none}
.carousel-track > *{scroll-snap-align:start;flex:0 0 clamp(260px,31vw,360px);direction:rtl}
.home-gallery.carousel-track{display:flex;grid-template-columns:none;margin-top:0}
.home-gallery.carousel-track .gallery-item{min-height:330px}
.real-testimonials.carousel-track{display:flex;grid-template-columns:none;margin-top:0}
.real-testimonials.carousel-track .testimonial-card{flex-basis:clamp(300px,31vw,390px);min-height:330px}
.carousel-arrow{position:absolute;top:50%;z-index:4;transform:translateY(-50%);width:46px;height:46px;border:1px solid var(--gold);border-radius:50%;background:rgba(16,12,8,.92);color:var(--gold-light);font-size:34px;line-height:1;display:grid;place-items:center;cursor:pointer;box-shadow:0 12px 28px rgba(0,0,0,.28)}
.carousel-arrow:hover{background:var(--gold-light);color:#1b1209}
.carousel-prev{right:-18px}.carousel-next{left:-18px}
.testimonials-carousel-shell .carousel-arrow{background:#fff;color:#6a4418;box-shadow:0 12px 28px rgba(78,50,18,.18)}
.testimonials-carousel-shell .carousel-arrow:hover{background:var(--gold-light);color:#1b1209}
@media(max-width:900px){.carousel-track > *{flex-basis:clamp(270px,72vw,420px)}.real-testimonials.carousel-track .testimonial-card{flex-basis:clamp(280px,76vw,430px)}.carousel-prev{right:-8px}.carousel-next{left:-8px}}
@media(max-width:560px){.carousel-shell{margin-inline:-2vw}.carousel-track{padding-inline:2vw}.carousel-track > *,.real-testimonials.carousel-track .testimonial-card{flex-basis:86vw}.carousel-arrow{width:40px;height:40px;font-size:30px}.carousel-prev{right:2px}.carousel-next{left:2px}}


/* Home proportions inspired by supplied reference */
@media(min-width:901px){
  .site-header{background:rgba(6,7,6,.94)}
  .nav-wrap{min-height:64px}
  .logo-mark{width:44px;height:44px;font-size:23px}
  .brand strong{font-size:17px}
  .brand em{font-size:18px}
  .hero{min-height:360px;padding-top:64px;background:#f4efe7}
  .hero-bg{inset:64px auto 0 0;width:43%;background:linear-gradient(90deg,rgba(0,0,0,.04),rgba(0,0,0,.14)),url("optimized/hero-door.webp") center/cover no-repeat;transform:none}
  .hero::after{display:none}
  .hero-inner{min-height:296px;grid-template-columns:minmax(0,1fr);justify-items:end;align-items:center}
  .hero-copy{width:min(650px,54vw);text-align:center;color:var(--ink)}
  .hero .eyebrow{display:none}
  .hero h1{font-size:clamp(42px,4.3vw,66px);line-height:1.05;color:#1c1915;margin:0 0 12px}
  .hero-text{font-size:23px;line-height:1.45;color:#28241f;margin:0 auto;max-width:560px}
  .hero-actions{justify-content:center;margin-top:24px}
  .hero .btn{min-height:44px;padding:9px 24px}
  .hero-panel{display:none}
  .trust-strip{background:#fffaf2;border-block:1px solid #e5d9c8;color:var(--ink)}
  .trust-grid{min-height:112px;align-items:center}
  .trust-grid div{display:grid;grid-template-columns:46px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;column-gap:14px;padding:18px 22px}
  .trust-grid .mini-icon{grid-row:1 / span 2;width:44px;height:44px}
  .trust-grid .mini-icon svg{width:38px;height:38px}
  .trust-grid strong{font-size:18px;color:#1f1a13}
  .trust-grid small{font-size:15px;color:#4a4034}
}

.home-gallery-section{background:#fff;padding:32px 0;border-block:1px solid #e7ded0;color:var(--ink)}
.gallery-preview-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,.75fr);gap:34px;align-items:center}
.gallery-preview-copy{text-align:center}
.gallery-preview-copy h2{font-size:34px;line-height:1.15;margin:4px 0 10px;color:#1d1914}
.gallery-preview-copy p{font-size:18px;color:#3f372e;margin:0 auto 18px;max-width:330px}
.gallery-preview-copy .btn{min-height:44px;padding:10px 24px;background:#111;color:#fff;border-color:#111}
.gallery-preview-strip .carousel-shell{margin-top:0}
.gallery-preview-strip .carousel-track{padding:0;gap:10px}
.gallery-preview-strip .carousel-track > *{flex-basis:clamp(138px,12.8vw,178px)}
.gallery-preview-strip .gallery-item{min-height:128px;height:128px;border-color:#d8c8b3}
.gallery-preview-strip .gallery-item figcaption{display:none}
.gallery-preview-strip .carousel-arrow{width:34px;height:34px;font-size:26px;background:rgba(255,255,255,.92);color:#6d4819;box-shadow:0 8px 18px rgba(0,0,0,.12)}
.gallery-preview-strip .carousel-prev{right:-12px}
.gallery-preview-strip .carousel-next{left:-12px}

.compact-testimonials{background:linear-gradient(180deg,#f8f1e7,#f3eadf);padding:34px 0 38px;color:var(--ink)}
.compact-testimonials .section-title h2{font-size:34px}
.compact-testimonials .section-title p{font-size:17px;max-width:650px;margin:8px auto 0;color:#4b4137}
.compact-testimonials .carousel-shell{margin-top:24px}
.compact-testimonials .carousel-track{gap:20px;padding-bottom:8px}
.compact-testimonials .real-testimonials.carousel-track .testimonial-card{flex:0 0 calc((100% - 40px)/3);min-height:126px;padding:20px 48px 18px 22px}
.compact-testimonials .testimonial-card p{font-size:16px;line-height:1.55;margin:0;color:#2e271f;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.compact-testimonials .testimonial-card .quote-mark{top:8px;left:20px;font-size:50px}
.compact-testimonials .testimonial-card footer{display:flex;gap:8px;align-items:center;margin-top:12px;font-size:14px}
.compact-testimonials .testimonial-card footer strong{font-size:15px}
.compact-testimonials .testimonial-card footer span{font-size:13px}
.compact-testimonials .source-link{font-size:13px;padding:6px 10px;margin-top:4px}
.compact-testimonials .carousel-arrow{width:38px;height:38px;font-size:28px;top:56%;background:transparent;color:#c79a4b;border:0;box-shadow:none}
.compact-testimonials .carousel-prev{right:-4px}
.compact-testimonials .carousel-next{left:-4px}

@media(max-width:900px){
  .gallery-preview-layout{grid-template-columns:1fr;gap:22px}
  .gallery-preview-copy{order:-1}
  .gallery-preview-strip .gallery-item{height:170px;min-height:170px}
  .compact-testimonials .real-testimonials.carousel-track .testimonial-card{flex-basis:72vw;min-height:170px}
  .compact-testimonials .testimonial-card p{-webkit-line-clamp:4}
}
@media(max-width:560px){
  .home-gallery-section{padding:28px 0}
  .gallery-preview-copy h2,.compact-testimonials .section-title h2{font-size:30px}
  .gallery-preview-strip .carousel-track > *{flex-basis:68vw}
  .gallery-preview-strip .gallery-item{height:210px;min-height:210px}
  .compact-testimonials .real-testimonials.carousel-track .testimonial-card{flex-basis:84vw}
}


/* Tighter home preview proportions */
@media(min-width:901px){
  .gallery-preview-strip .home-gallery.carousel-track .gallery-item{
    min-height:148px;
    height:148px;
    flex-basis:clamp(142px,13vw,178px);
  }
  .home-gallery-section{
    padding:24px 0;
  }
  .gallery-preview-layout{
    gap:30px;
  }
  .compact-testimonials{
    padding:28px 0 30px;
  }
  .compact-testimonials .section-title h2{
    font-size:30px;
  }
  .compact-testimonials .section-title p{
    font-size:16px;
    margin-top:4px;
  }
  .compact-testimonials .carousel-shell{
    margin-top:18px;
  }
  .compact-testimonials .real-testimonials.carousel-track .testimonial-card{
    min-height:156px;
    height:156px;
    padding:16px 40px 14px 18px;
  }
  .compact-testimonials .testimonial-card p{
    font-size:15px;
    line-height:1.42;
    -webkit-line-clamp:2;
  }
  .compact-testimonials .testimonial-card footer{
    margin-top:8px;
  }
  .compact-testimonials .source-link{
    font-size:12px;
    padding:5px 9px;
  }
}


/* Mobile audit fixes */
.gallery-preview-layout,
.gallery-preview-strip,
.gallery-preview-copy,
.carousel-shell,
.carousel-track{
  min-width:0;
}
.home-gallery-section{
  overflow:hidden;
}
@media(max-width:900px){
  .hero{
    min-height:590px;
  }
  .hero-inner{
    min-height:512px;
  }
  .hero h1{
    font-size:38px;
  }
  .hero-text{
    font-size:17px;
  }
  .trust-grid div{
    padding:18px 16px;
  }
}
@media(max-width:560px){
  .hero{
    min-height:560px;
  }
  .hero-inner{
    min-height:492px;
  }
  .trust-grid div{
    padding:15px 14px;
  }
  .trust-grid strong{
    font-size:17px;
  }
  .trust-grid small{
    font-size:14px;
  }
  .gallery-preview-layout,
  .gallery-preview-strip,
  .gallery-preview-copy,
  .carousel-shell,
  .carousel-track{
    max-width:100%;
  }
}

/* Luxury hero and overflow correction */
html,
body{
  width:100%;
  max-width:100%;
  overflow-x:hidden;
}
body{
  position:relative;
}
.site-header,
main,
section{
  max-width:100%;
}
.site-header{
  left:0;
  right:0;
  width:100%;
}
.container{
  max-width:1180px;
}
.carousel-shell{
  max-width:100%;
}
.carousel-track{
  max-width:100%;
  overscroll-behavior-inline:contain;
}
.gallery-preview-strip{
  overflow:hidden;
}

@media(min-width:901px){
  .site-header{
    background:linear-gradient(90deg,rgba(18,15,11,.96),rgba(4,4,3,.98));
    border-bottom:1px solid rgba(199,154,75,.26);
    box-shadow:0 10px 30px rgba(0,0,0,.22);
  }
  .hero{
    min-height:clamp(620px,52vw,800px);
    padding-top:64px;
    background:#090806;
    overflow:hidden;
  }
  .hero-bg{
    inset:64px 0 0;
    width:auto;
    background:
      radial-gradient(circle at 18% 48%,rgba(199,154,75,.12),transparent 34%),
      linear-gradient(90deg,rgba(0,0,0,.34) 0%,rgba(0,0,0,.72) 44%,rgba(0,0,0,.94) 100%),
      url("optimized/hero-door.webp") center/cover no-repeat;
    transform:scale(1.01);
  }
  .hero::after{
    display:block;
    height:38%;
    background:linear-gradient(0deg,#090806,rgba(9,8,6,0));
  }
  .hero-inner{
    min-height:calc(clamp(620px,52vw,800px) - 64px);
    grid-template-columns:minmax(230px,.42fr) minmax(0,.58fr);
    gap:54px;
    justify-items:stretch;
    align-items:center;
  }
  .hero-copy{
    width:auto;
    max-width:760px;
    justify-self:end;
    text-align:right;
    color:#fff;
  }
  .hero .eyebrow{
    display:block;
    margin:0 0 22px;
    color:var(--gold-light);
  }
  .hero h1{
    color:#fff;
    font-size:clamp(64px,6.25vw,104px);
    line-height:1.03;
    margin:0 0 22px;
    max-width:760px;
    text-shadow:0 8px 28px rgba(0,0,0,.42);
  }
  .hero-text{
    color:#f5efe5;
    font-size:clamp(22px,1.7vw,30px);
    line-height:1.6;
    max-width:730px;
    margin:0;
    text-shadow:0 3px 18px rgba(0,0,0,.5);
  }
  .hero-actions{
    justify-content:flex-start;
    margin-top:34px;
  }
  .hero .btn{
    min-height:56px;
    padding:13px 30px;
  }
  .hero-panel{
    display:block;
    width:min(100%,330px);
    justify-self:start;
    background:rgba(8,7,5,.68);
    border:1px solid rgba(199,154,75,.42);
    box-shadow:0 24px 80px rgba(0,0,0,.34);
    backdrop-filter:blur(3px);
  }
  .trust-strip{
    background:#fffaf2;
    border-block:1px solid #e5d9c8;
    color:var(--ink);
  }
}

@media(max-width:900px){
  .hero{
    background:#090806;
  }
  .hero-bg{
    background:
      linear-gradient(90deg,rgba(0,0,0,.46),rgba(0,0,0,.86)),
      url("optimized/hero-door.webp") center/cover no-repeat;
  }
  .hero h1{
    color:#fff;
    text-shadow:0 6px 24px rgba(0,0,0,.45);
  }
  .hero-text{
    color:#f5efe5;
  }
}

@media(max-width:560px){
  .container{
    width:min(100% - 28px,1180px);
  }
  .hero-actions{
    gap:10px;
  }
  .gallery-preview-strip .carousel-prev,
  .compact-testimonials .carousel-prev{
    right:0;
  }
  .gallery-preview-strip .carousel-next,
  .compact-testimonials .carousel-next{
    left:0;
  }
}

/* Series gallery page */
.series-gallery-page{
  background:#0b0a08;
  color:#fff;
  padding-top:52px;
}
.series-intro{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(240px,360px);
  gap:34px;
  align-items:end;
  margin-bottom:28px;
}
.series-intro h2{
  font-size:clamp(32px,4vw,54px);
  line-height:1.12;
  margin:0 0 10px;
}
.series-intro p{
  color:#d8ccbb;
  font-size:19px;
  margin:0;
  max-width:760px;
}
.series-stats{
  border:1px solid rgba(199,154,75,.35);
  background:linear-gradient(135deg,rgba(255,255,255,.06),rgba(255,255,255,.02));
  padding:20px;
  display:grid;
  gap:6px;
}
.series-stats strong{
  color:var(--gold-light);
  font-size:30px;
  line-height:1;
}
.series-jump{
  position:sticky;
  top:70px;
  z-index:8;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  padding:14px 0 18px;
  margin-bottom:18px;
  background:linear-gradient(180deg,#0b0a08 70%,rgba(11,10,8,0));
}
.series-jump a{
  border:1px solid rgba(199,154,75,.42);
  color:#f2ddb3;
  background:rgba(255,255,255,.055);
  padding:9px 15px;
  font-weight:800;
}
.series-jump a:hover{
  background:var(--gold-light);
  color:#130d07;
}
.series-group{
  padding:28px 0 38px;
  border-top:1px solid rgba(255,255,255,.1);
}
.series-group-title{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:18px;
  margin-bottom:16px;
}
.series-group-title h2{
  margin:0;
  font-size:clamp(27px,3vw,42px);
}
.series-group-title span{
  color:#b9aa93;
}
.series-accordion{
  display:grid;
  gap:14px;
}
.series-item{
  border:1px solid rgba(199,154,75,.32);
  background:linear-gradient(135deg,rgba(255,250,242,.08),rgba(255,250,242,.025));
  overflow:hidden;
}
.series-toggle{
  width:100%;
  display:grid;
  grid-template-columns:96px minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  padding:14px;
  background:transparent;
  border:0;
  color:inherit;
  text-align:right;
  font:inherit;
  cursor:pointer;
}
.series-toggle:hover{
  background:rgba(199,154,75,.08);
}
.series-cover{
  width:96px;
  aspect-ratio:1.25;
  object-fit:cover;
  border:1px solid rgba(199,154,75,.28);
  background:#161310;
}
.series-title{
  display:grid;
  gap:4px;
}
.series-title strong{
  font-size:22px;
  line-height:1.25;
}
.series-title small{
  color:#cfc1ae;
  font-size:15px;
}
.series-arrow{
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border:1px solid rgba(199,154,75,.5);
  color:var(--gold-light);
  font-size:25px;
  line-height:1;
  transition:.2s;
}
.series-toggle[aria-expanded="true"] .series-arrow{
  transform:rotate(180deg);
  background:rgba(199,154,75,.16);
}
.series-panel{
  display:none;
  padding:0 14px 18px;
}
.series-item.is-open .series-panel{
  display:block;
}
.series-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.series-thumb{
  position:relative;
  min-height:210px;
  border:1px solid rgba(255,255,255,.12);
  background:#161310;
  overflow:hidden;
  cursor:pointer;
  padding:0;
}
.series-thumb img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:.25s;
}
.series-thumb:hover img{
  transform:scale(1.045);
}
.series-thumb span{
  position:absolute;
  inset:auto 10px 10px;
  z-index:2;
  color:#fff;
  font-weight:800;
  text-shadow:0 2px 12px rgba(0,0,0,.7);
}
.series-thumb::after{
  content:"";
  position:absolute;
  inset:45% 0 0;
  background:linear-gradient(0deg,rgba(0,0,0,.74),transparent);
}
.gallery-lightbox{
  position:fixed;
  inset:0;
  z-index:90;
  display:none;
  align-items:center;
  justify-content:center;
  background:rgba(5,4,3,.88);
  padding:24px;
}
.gallery-lightbox.is-open{
  display:flex;
}
.gallery-lightbox img{
  max-width:min(1120px,94vw);
  max-height:86vh;
  border:1px solid rgba(199,154,75,.36);
  box-shadow:0 28px 90px rgba(0,0,0,.55);
  background:#111;
}
.gallery-lightbox-caption{
  position:absolute;
  right:24px;
  bottom:18px;
  left:80px;
  color:#f6ead5;
  font-weight:800;
  text-align:right;
}
.gallery-lightbox-close{
  position:absolute;
  top:20px;
  left:22px;
  width:46px;
  height:46px;
  border:1px solid var(--gold);
  background:#120d08;
  color:#fff;
  font-size:30px;
  cursor:pointer;
}
@media(max-width:1100px){
  .series-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){
  .series-intro{grid-template-columns:1fr}
  .series-jump{position:static}
  .series-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .series-thumb{min-height:190px}
}
@media(max-width:560px){
  .series-gallery-page{padding-top:34px}
  .series-toggle{grid-template-columns:74px minmax(0,1fr) 34px;gap:10px;padding:10px}
  .series-cover{width:74px}
  .series-title strong{font-size:18px}
  .series-title small{font-size:13px}
  .series-arrow{width:34px;height:34px}
  .series-grid{grid-template-columns:1fr}
  .series-thumb{min-height:260px}
  .gallery-lightbox{padding:12px}
  .gallery-lightbox-close{top:12px;left:12px}
  .gallery-lightbox-caption{right:14px;bottom:12px;left:64px;font-size:14px}
}

/* Brand logo and compact luxury home refinement */
.brand-image{
  min-width:0;
  flex:0 0 auto;
}
.brand-logo-img{
  width:clamp(138px,13vw,210px);
  height:auto;
  max-height:58px;
  object-fit:contain;
  filter:drop-shadow(0 6px 16px rgba(0,0,0,.28));
}
.site-header .brand-image{
  padding:2px 0;
}

@media(min-width:901px){
  .nav-wrap{
    min-height:72px;
    gap:16px;
  }
  .main-nav{
    gap:18px;
  }
  .site-header{
    background:linear-gradient(90deg,rgba(17,14,10,.98),rgba(3,3,2,.98));
  }
  .hero{
    min-height:clamp(590px,49vw,730px);
    padding-top:72px;
  }
  .hero-bg{
    inset:72px 0 0;
    background:
      linear-gradient(90deg,rgba(0,0,0,.26) 0%,rgba(0,0,0,.57) 38%,rgba(0,0,0,.96) 100%),
      url("optimized/hero-door.webp") center/cover no-repeat;
  }
  .hero::after{
    height:30%;
  }
  .hero-inner{
    min-height:calc(clamp(590px,49vw,730px) - 72px);
    grid-template-columns:minmax(260px,.48fr) minmax(0,.52fr);
    gap:42px;
  }
  .hero-copy{
    max-width:min(560px,44vw);
    justify-self:end;
    text-align:right;
  }
  .hero .eyebrow{
    font-size:18px;
    line-height:1.25;
    margin-bottom:18px;
    white-space:normal;
    max-width:100%;
  }
  .hero h1{
    font-size:clamp(60px,5.7vw,88px);
    line-height:1.06;
    max-width:560px;
    overflow-wrap:normal;
    text-wrap:balance;
  }
  .hero-text{
    font-size:clamp(20px,1.48vw,25px);
    line-height:1.55;
    max-width:540px;
    overflow-wrap:break-word;
  }
  .hero-actions{
    margin-top:26px;
  }
  .hero-panel{
    width:min(100%,310px);
    padding:24px;
    align-self:center;
    transform:translateY(34px);
  }
  .hero-panel strong{
    font-size:25px;
  }

  .services{
    background:linear-gradient(180deg,#11100e,#17130f);
    color:#fff;
    padding:42px 0 46px;
  }
  .services .section-title{
    display:flex;
    align-items:end;
    justify-content:space-between;
    gap:28px;
    max-width:none;
    margin-bottom:22px;
  }
  .services .section-title h2{
    font-size:clamp(28px,3.1vw,42px);
    max-width:720px;
    color:#fff;
  }
  .services .section-kicker{
    margin:0;
  }
  .cards-grid{
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:12px;
    margin-top:0;
  }
  .service-card{
    min-height:unset;
    padding:18px 16px;
    background:rgba(255,255,255,.045);
    border-color:rgba(199,154,75,.28);
  }
  .service-card .service-icon{
    width:42px;
    height:42px;
    margin-bottom:10px;
    background:transparent;
  }
  .service-card h3{
    font-size:19px;
    color:#f2ddb3;
    margin-bottom:7px;
  }
  .service-card p{
    color:#d8ccbb;
    font-size:15px;
    line-height:1.55;
  }

  .about-section{
    background:#fffaf2;
    padding:46px 0;
  }
  .about-section .split{
    grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);
    gap:42px;
  }
  .about-section .split h2{
    font-size:clamp(28px,3vw,42px);
  }
  .rich-text{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
    font-size:16px;
    line-height:1.65;
  }
  .rich-text p{
    margin:0;
    padding:18px;
    background:#fff;
    border:1px solid #e7d9c1;
  }
}

@media(max-width:1100px) and (min-width:901px){
  .brand-logo-img{
    width:150px;
  }
  .main-nav{
    gap:12px;
    font-size:15px;
  }
  .phone-link,.whatsapp-nav{
    padding:9px 12px;
  }
}

@media(max-width:900px){
  .brand-logo-img{
    width:138px;
    max-height:50px;
  }
  .hero-copy{
    max-width:100%;
  }
  .hero .eyebrow,
  .hero h1,
  .hero-text{
    max-width:100%;
  }
  .services{
    padding:36px 0;
    background:linear-gradient(180deg,#11100e,#17130f);
    color:#fff;
  }
  .services .section-title h2{
    font-size:30px;
    color:#fff;
  }
  .services .cards-grid{
    gap:10px;
    margin-top:20px;
  }
  .service-card{
    min-height:unset;
    display:grid;
    grid-template-columns:46px minmax(0,1fr);
    column-gap:12px;
    align-items:center;
    padding:14px;
    background:rgba(255,255,255,.045);
    border-color:rgba(199,154,75,.25);
  }
  .service-card .service-icon{
    grid-row:1 / span 2;
    margin:0;
    background:transparent;
    border:0;
  }
  .service-card h3{
    margin:0 0 2px;
    font-size:18px;
    color:#f2ddb3;
  }
  .service-card p{
    margin:0;
    color:#d8ccbb;
    font-size:14px;
    line-height:1.45;
  }
  .about-section{
    padding:36px 0;
  }
  .about-section .split{
    gap:22px;
  }
  .about-section .split h2{
    font-size:30px;
  }
  .rich-text{
    font-size:15px;
    line-height:1.55;
  }
  .rich-text p{
    margin:0 0 10px;
  }
}

@media(max-width:560px){
  .brand-logo-img{
    width:118px;
    max-height:44px;
  }
  .phone-link{
    font-size:14px;
  }
  .hero h1{
    font-size:42px;
    line-height:1.1;
  }
  .hero-text{
    font-size:17px;
    line-height:1.65;
  }
  .services .cards-grid{
    grid-template-columns:1fr;
  }
  .service-card{
    padding:12px 13px;
  }
  .service-card p{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  .rich-text p{
    padding:14px;
    background:#fff;
    border:1px solid #e7d9c1;
  }
}

/* Final hero/services tuning */
.hero .eyebrow{
  display:none !important;
}
@media(min-width:901px){
  .hero-panel{
    transform:translate(-74px,34px);
  }
  .services .section-title{
    display:block;
    text-align:right;
    margin-inline:0 auto;
  }
  .services .section-title h2{
    margin:0;
  }
}
@media(max-width:900px){
  .hero-panel{
    transform:none;
  }
  .services .section-title{
    text-align:right;
  }
}

/* Unified about section refinement */
@media(min-width:901px){
  .about-section .split{
    grid-template-columns:minmax(320px,.78fr) minmax(0,1.22fr);
    align-items:center;
  }
  .about-section .rich-text{
    display:block;
    max-width:760px;
    padding:28px 32px;
    background:#fff;
    border:1px solid #e1d2bc;
    box-shadow:0 18px 45px rgba(53,35,13,.06);
  }
  .about-section .rich-text p{
    margin:0;
    padding:0;
    background:transparent;
    border:0;
    font-size:18px;
    line-height:1.85;
    color:#3b3329;
  }
  .about-section .rich-text p + p{
    margin-top:14px;
    padding-top:14px;
    border-top:1px solid #eadfce;
  }
}
@media(max-width:900px){
  .about-section .rich-text{
    display:block;
    padding:18px;
    background:#fff;
    border:1px solid #e1d2bc;
  }
  .about-section .rich-text p{
    padding:0;
    margin:0;
    border:0;
    background:transparent;
  }
  .about-section .rich-text p + p{
    margin-top:12px;
    padding-top:12px;
    border-top:1px solid #eadfce;
  }
}

/* Hero panel left placement */
@media(min-width:901px){
  .hero-panel{
    transform:translate(-205px,34px);
  }
}
@media(min-width:1280px){
  .hero-panel{
    transform:translate(-245px,34px);
  }
}
@media(max-width:900px){
  .hero-panel{
    transform:none;
  }
}

/* Gallery closed-by-default and contained door thumbnails */
.series-thumb{
  height:260px;
  min-height:0;
  background:linear-gradient(180deg,#181512,#0b0a08);
  display:grid;
  place-items:center;
}
.series-thumb img{
  position:relative;
  inset:auto;
  width:auto;
  max-width:100%;
  height:auto;
  max-height:100%;
  object-fit:contain;
  padding:10px;
  margin:auto;
}
.series-thumb:hover img{
  transform:none;
}
.series-thumb::after{
  inset:auto 0 0;
  height:36%;
}
@media(max-width:900px){
  .series-thumb{
    height:240px;
    min-height:0;
  }
}
@media(max-width:560px){
  .series-thumb{
    height:300px;
    min-height:0;
  }
}

/* Articles page */
.articles-page{
  background:#fffaf2;
  color:var(--ink);
}
.articles-intro{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,360px);
  gap:34px;
  align-items:end;
  margin-bottom:32px;
}
.articles-intro h2{
  font-size:clamp(34px,4vw,54px);
  line-height:1.12;
  margin:0 0 10px;
}
.articles-intro p{
  color:#5d5144;
  font-size:19px;
  margin:0;
}
.articles-note{
  border:1px solid #e1d2bc;
  background:#fff;
  padding:22px;
  color:#4d4236;
}
.articles-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-bottom:36px;
}
.article-card{
  background:#fff;
  border:1px solid #e1d2bc;
  padding:24px;
  box-shadow:0 18px 45px rgba(53,35,13,.06);
}
.article-card .section-kicker{
  display:block;
  margin-bottom:8px;
}
.article-card h3{
  font-size:25px;
  line-height:1.2;
  margin:0 0 10px;
}
.article-card p{
  color:#5b5044;
  margin:0 0 18px;
}
.article-card a{
  color:#6f4517;
  font-weight:900;
  border-bottom:1px solid rgba(199,154,75,.5);
}
.article-full-list{
  display:grid;
  gap:22px;
}
.article-full{
  background:#fff;
  border:1px solid #e1d2bc;
  padding:30px;
}
.article-full h2{
  font-size:clamp(28px,3vw,42px);
  line-height:1.16;
  margin:0 0 18px;
}
.article-meta{
  color:#8a755d;
  font-weight:800;
  margin-bottom:14px;
}
.article-body{
  color:#332b23;
  font-size:18px;
  line-height:1.9;
}
.article-body p{
  margin:0 0 15px;
}
.article-body ul{
  margin:0 0 16px;
  padding:0 22px 0 0;
}
.article-body li{
  margin-bottom:8px;
}
@media(max-width:900px){
  .articles-intro,
  .articles-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:560px){
  .article-card,
  .article-full,
  .articles-note{
    padding:18px;
  }
  .article-body{
    font-size:16px;
    line-height:1.8;
  }
}

/* Gallery watermark overlay */
.series-thumb::before{
  content:"";
  position:absolute;
  right:12px;
  top:12px;
  z-index:2;
  width:min(38%,138px);
  aspect-ratio:2.45/1;
  background:url("brand/logo-shoshan-gold-black.png") center/contain no-repeat;
  opacity:.34;
  pointer-events:none;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.45));
}
.series-thumb::after{
  z-index:1;
}
.series-thumb span{
  z-index:3;
}
.gallery-lightbox{
  isolation:isolate;
}
.gallery-lightbox::before{
  content:"";
  position:absolute;
  inset:50% auto auto 50%;
  z-index:2;
  width:min(46vw,520px);
  aspect-ratio:2.45/1;
  background:url("brand/logo-shoshan-gold-black.png") center/contain no-repeat;
  opacity:.18;
  transform:translate(-50%,-50%) rotate(-8deg);
  pointer-events:none;
  filter:drop-shadow(0 18px 40px rgba(0,0,0,.45));
}
.gallery-lightbox img{
  position:relative;
  z-index:1;
}
.gallery-lightbox-caption,
.gallery-lightbox-close{
  z-index:3;
}
@media(max-width:560px){
  .series-thumb::before{
    width:min(42%,128px);
    right:10px;
    top:10px;
    opacity:.32;
  }
  .gallery-lightbox::before{
    width:min(70vw,320px);
    opacity:.16;
  }
}

/* Mobile navigation and density refinement */
.mobile-menu-toggle{
  display:none;
}
@media(max-width:900px){
  body.mobile-nav-open{
    overflow:hidden;
  }
  .site-header{
    z-index:70;
  }
  .nav-wrap{
    min-height:74px;
    gap:8px;
    position:relative;
  }
  .brand-image{
    min-width:0;
    flex:1 1 auto;
  }
  .brand-logo-img{
    width:clamp(150px,43vw,190px);
    max-height:60px;
  }
  .phone-link{
    min-height:44px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:8px 11px;
    font-size:14px;
    flex:0 0 auto;
  }
  .mobile-menu-toggle{
    display:grid;
    place-items:center;
    gap:4px;
    width:46px;
    height:46px;
    flex:0 0 46px;
    border:1px solid var(--gold);
    background:rgba(9,8,6,.94);
    color:var(--gold-light);
    cursor:pointer;
    padding:0;
  }
  .mobile-menu-toggle span{
    width:22px;
    height:2px;
    background:currentColor;
    display:block;
    transition:transform .2s ease,opacity .2s ease;
  }
  body.mobile-nav-open .mobile-menu-toggle span:nth-child(1){
    transform:translateY(6px) rotate(45deg);
  }
  body.mobile-nav-open .mobile-menu-toggle span:nth-child(2){
    opacity:0;
  }
  body.mobile-nav-open .mobile-menu-toggle span:nth-child(3){
    transform:translateY(-6px) rotate(-45deg);
  }
  .main-nav{
    display:flex;
    position:fixed;
    top:74px;
    right:14px;
    left:14px;
    z-index:75;
    flex-direction:column;
    gap:0;
    padding:10px;
    background:linear-gradient(180deg,rgba(15,12,8,.98),rgba(4,4,3,.98));
    border:1px solid rgba(199,154,75,.38);
    box-shadow:0 22px 60px rgba(0,0,0,.45);
    transform:translateY(-10px);
    opacity:0;
    pointer-events:none;
    max-height:calc(100vh - 92px);
    overflow:auto;
  }
  body.mobile-nav-open .main-nav{
    transform:translateY(0);
    opacity:1;
    pointer-events:auto;
  }
  .main-nav a{
    min-height:48px;
    display:flex;
    align-items:center;
    padding:0 14px;
    border-bottom:1px solid rgba(255,255,255,.08);
    color:#fff;
    font-size:18px;
  }
  .main-nav a:last-child{
    border-bottom:0;
  }
  .main-nav a:hover,
  .main-nav a:focus{
    color:var(--gold-light);
    background:rgba(199,154,75,.08);
  }
  .section{
    padding:48px 0;
  }
  .section-title h2,
  .split h2,
  .category-heading h2{
    font-size:clamp(28px,8vw,42px);
  }
  .trust-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .trust-grid div{
    padding:14px 12px;
    gap:4px;
  }
  .trust-grid small{
    line-height:1.35;
  }
  .services .cards-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  .service-card{
    min-height:0;
    padding:15px 13px;
  }
  .service-card .service-icon{
    width:38px;
    height:38px;
    margin-bottom:10px;
  }
  .service-card h3{
    font-size:20px;
    margin-bottom:7px;
  }
  .service-card p{
    font-size:15px;
    line-height:1.45;
  }
  .gallery-preview-layout{
    gap:18px;
  }
  .gallery-preview-copy p{
    display:none;
  }
  .gallery-preview-strip .carousel-track{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    overflow:visible;
    gap:9px;
  }
  .gallery-preview-strip .carousel-track > *{
    flex-basis:auto;
  }
  .gallery-preview-strip .gallery-item{
    height:150px;
    min-height:150px;
  }
  .gallery-preview-strip .carousel-arrow{
    display:none;
  }
  .compact-testimonials{
    padding:26px 0 28px;
  }
  .compact-testimonials .section-title p{
    display:none;
  }
  .compact-testimonials .carousel-shell{
    margin-top:18px;
  }
  .compact-testimonials .testimonial-card{
    padding:18px;
  }
  .contact-band{
    padding:46px 0 72px;
  }
  .floating-whatsapp{
    left:12px;
    bottom:12px;
    padding:12px 16px;
    z-index:65;
  }
}
@media(max-width:379px){
  .brand-logo-img{
    width:132px;
    max-height:52px;
  }
  .phone-link{
    font-size:13px;
    padding:7px 8px;
  }
  .mobile-menu-toggle{
    width:42px;
    height:42px;
    flex-basis:42px;
  }
  .trust-grid,
  .services .cards-grid,
  .gallery-preview-strip .carousel-track{
    grid-template-columns:1fr;
  }
  .gallery-preview-strip .gallery-item{
    height:190px;
    min-height:190px;
  }
}
@media(min-width:561px) and (max-width:900px){
  .gallery-preview-strip .gallery-item{
    height:190px;
    min-height:190px;
  }
  .compact-testimonials .real-testimonials.carousel-track .testimonial-card{
    flex-basis:60vw;
  }
}



/* Mobile menu requested link set */
.mobile-home-link{
  display:none;
}
@media(max-width:900px){
  .main-nav .mobile-home-link{
    display:flex;
    order:1;
  }
  .main-nav .mobile-gallery-link{order:2}
  .main-nav .mobile-recommendations-link{order:3}
  .main-nav .mobile-articles-link{order:4}
  .main-nav .mobile-contact-link{order:5}
  .main-nav .mobile-secondary-link{
    display:none;
  }
}

/* Final mobile overflow guard */
html,
body{
  max-width:100%;
  overflow-x:hidden;
}
@media(max-width:900px){
  .hero,
  .hero-inner,
  .hero-copy,
  .hero h1,
  .hero-text,
  .hero-actions,
  .trust-strip,
  .services,
  .home-gallery-section,
  .compact-testimonials,
  .contact-band{
    max-width:100%;
    min-width:0;
    box-sizing:border-box;
  }
  .hero{
    min-height:520px;
    padding-top:74px;
  }
  .hero-inner{
    width:100%;
    min-height:446px;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    padding-block:34px 26px;
  }
  .hero-copy{
    width:100% !important;
    max-width:100% !important;
    justify-self:stretch !important;
    text-align:right;
    margin:0;
    padding-inline:0;
    overflow:hidden;
  }
  .hero h1{
    width:100%;
    max-width:100% !important;
    font-size:clamp(34px,9.8vw,46px) !important;
    line-height:1.12;
    overflow-wrap:break-word;
    word-break:normal;
    margin:0 0 14px;
  }
  .hero-text{
    width:100%;
    max-width:100% !important;
    font-size:clamp(15px,4.1vw,18px) !important;
    line-height:1.55;
    overflow-wrap:break-word;
  }
  .hero-actions{
    width:100%;
    gap:10px;
  }
  .hero-actions .btn{
    min-width:0;
    white-space:normal;
    text-align:center;
  }
}
@media(max-width:430px){
  .hero h1{
    font-size:clamp(31px,9vw,38px) !important;
  }
  .hero-text{
    font-size:15px !important;
    line-height:1.48;
  }
  .hero-actions .btn{
    min-height:48px;
    padding:11px 16px;
  }
}

/* Final mobile header and hero alignment */
@media(max-width:900px){
  .nav-wrap{
    direction:ltr;
    justify-content:space-between;
    overflow:visible;
  }
  .brand-image{
    order:3;
    flex:0 1 auto;
    justify-content:flex-end;
    direction:rtl;
  }
  .mobile-menu-toggle{
    order:2;
  }
  .phone-link{
    order:1;
  }
  .hero-inner{
    justify-content:center;
    text-align:center;
  }
  .hero-copy{
    text-align:center !important;
  }
  .hero h1,
  .hero-text{
    margin-inline:auto;
    text-align:center;
  }
}
@media(max-width:430px){
  .brand-logo-img{
    width:128px;
    max-height:52px;
  }
}
@media(max-width:379px){
  .brand-logo-img{
    width:116px;
  }
}

/* Compact mobile hero typography */
@media(max-width:900px){
  .hero-copy{
    max-width:min(100%,620px) !important;
    padding-inline:12px;
  }
  .hero h1{
    max-width:min(100%,520px) !important;
    font-size:clamp(32px,7.6vw,44px) !important;
  }
  .hero-text{
    max-width:min(100%,560px) !important;
  }
}
@media(max-width:430px){
  .hero-copy{
    padding-inline:18px;
  }
  .hero h1{
    max-width:320px !important;
    font-size:30px !important;
    line-height:1.18;
  }
  .hero-text{
    max-width:330px !important;
    font-size:14.5px !important;
    line-height:1.48;
  }
  .brand-logo-img{
    width:118px;
  }
}

/* Mobile viewport lock and final no-overflow tuning */
@media(max-width:900px){
  *,
  *::before,
  *::after{
    min-width:0;
  }
  html,
  body{
    width:100%;
    max-width:100%;
    overflow-x:hidden !important;
  }
  body{
    position:relative;
  }
  .site-header,
  main,
  .hero,
  .trust-strip,
  .services,
  .home-gallery-section,
  .about-section,
  .compact-testimonials,
  .contact-band,
  .site-footer{
    width:100%;
    max-width:100%;
    overflow:hidden;
  }
  .container,
  .nav-wrap,
  .hero-inner{
    width:calc(100% - 28px) !important;
    max-width:calc(100% - 28px) !important;
    margin-right:auto !important;
    margin-left:auto !important;
  }
  .hero-inner{
    padding-right:0 !important;
    padding-left:0 !important;
  }
  .hero-copy{
    width:100% !important;
    max-width:100% !important;
    margin-right:auto !important;
    margin-left:auto !important;
    padding-right:0 !important;
    padding-left:0 !important;
    transform:none !important;
    overflow:visible !important;
  }
  .hero h1{
    display:block;
    inline-size:min(100%, 340px) !important;
    max-inline-size:min(100%, 340px) !important;
    width:auto !important;
    margin-right:auto !important;
    margin-left:auto !important;
    white-space:normal !important;
    text-wrap:auto !important;
    overflow-wrap:normal !important;
  }
  .hero-text{
    display:block;
    inline-size:min(100%, 352px) !important;
    max-inline-size:min(100%, 352px) !important;
    width:auto !important;
    margin-right:auto !important;
    margin-left:auto !important;
  }
  .hero-actions{
    inline-size:min(100%, 352px) !important;
    max-inline-size:min(100%, 352px) !important;
    margin-right:auto !important;
    margin-left:auto !important;
  }
  .trust-grid,
  .services .cards-grid,
  .gallery-preview-strip .carousel-track,
  .gallery-grid,
  .home-gallery{
    width:100%;
    max-width:100%;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .trust-grid > *,
  .services .cards-grid > *,
  .gallery-preview-strip .carousel-track > *,
  .gallery-grid > *,
  .home-gallery > *{
    min-width:0;
    max-width:100%;
  }
}
@media(max-width:430px){
  .nav-wrap{
    gap:8px;
  }
  .brand-logo-img{
    width:104px !important;
    max-height:44px !important;
    object-fit:contain;
  }
  .mobile-menu-toggle{
    width:44px;
    height:44px;
    flex:0 0 44px;
  }
  .phone-link{
    font-size:13.5px;
    padding:8px 9px;
  }
  .hero h1{
    inline-size:min(100%, 300px) !important;
    max-inline-size:min(100%, 300px) !important;
    font-size:28px !important;
    line-height:1.2 !important;
  }
  .hero-text{
    inline-size:min(100%, 318px) !important;
    max-inline-size:min(100%, 318px) !important;
    font-size:14px !important;
  }
  .hero-actions{
    inline-size:min(100%, 318px) !important;
    max-inline-size:min(100%, 318px) !important;
  }
}
@media(max-width:379px){
  .trust-grid,
  .services .cards-grid,
  .gallery-preview-strip .carousel-track,
  .gallery-grid,
  .home-gallery{
    grid-template-columns:1fr;
  }
}

/* Mobile hero controlled line breaks */
.hero h1 span{
  display:inline;
}
@media(max-width:900px){
  .hero h1{
    display:grid !important;
    justify-items:center;
    gap:.04em;
    inline-size:100% !important;
    max-inline-size:100% !important;
  }
  .hero h1 span{
    display:block;
    max-width:100%;
    white-space:normal;
  }
}
@media(max-width:430px){
  .hero h1{
    font-size:27px !important;
  }
}

/* Mobile final tight alignment */
@media(max-width:430px){
  .brand-logo-img{
    width:88px !important;
    max-height:42px !important;
  }
  .hero h1{
    font-size:31px !important;
    gap:.02em;
  }
  .hero h1 span{
    inline-size:100%;
    text-align:center;
  }
  .trust-grid div,
  .service-card{
    text-align:center;
    justify-items:center;
  }
  .trust-grid div{
    grid-template-columns:1fr !important;
    grid-template-rows:auto auto auto;
    padding:14px 8px;
  }
  .trust-grid .mini-icon{
    grid-row:auto !important;
  }
  .service-card{
    grid-template-columns:1fr !important;
    padding:14px 8px;
  }
  .service-card .service-icon{
    grid-row:auto !important;
  }
  .section-title,
  .gallery-preview-copy,
  .contact-info{
    text-align:center;
    margin-inline:auto;
  }
}

/* Narrow phone viewport centering */
@media(max-width:430px){
  .brand-image{
    transform:translateX(-36px);
  }
  .hero-copy{
    transform:translateX(-38px) !important;
  }
  .hero-actions{
    inline-size:min(100%, 286px) !important;
    max-inline-size:min(100%, 286px) !important;
  }
  .trust-grid,
  .services .cards-grid,
  .gallery-preview-strip .carousel-track,
  .gallery-grid,
  .home-gallery{
    width:calc(100% - 72px);
    max-width:calc(100% - 72px);
    margin-right:auto;
    margin-left:auto;
  }
  .section-title,
  .gallery-preview-copy,
  .contact-info,
  .about-section .split{
    width:calc(100% - 72px);
    max-width:calc(100% - 72px);
    margin-right:auto;
    margin-left:auto;
  }
}
@media(max-width:379px){
  .brand-image,
  .hero-copy{
    transform:none !important;
  }
  .trust-grid,
  .services .cards-grid,
  .gallery-preview-strip .carousel-track,
  .gallery-grid,
  .home-gallery,
  .section-title,
  .gallery-preview-copy,
  .contact-info,
  .about-section .split{
    width:100%;
    max-width:100%;
  }
}

/* Mobile performance and navigation fixes */
@media(max-width:900px){
  .site-header{
    z-index:120;
  }
  .nav-wrap{
    direction:rtl !important;
    display:grid !important;
    grid-template-columns:minmax(86px,1fr) 52px minmax(96px,1fr);
    align-items:center;
    gap:8px;
    min-height:66px;
    width:min(100% - 24px,1180px) !important;
    max-width:min(100% - 24px,1180px) !important;
  }
  .brand-image{
    order:initial;
    grid-column:1;
    justify-self:end;
    transform:none !important;
  }
  .brand-logo-picture,
  .brand-logo-img{
    display:block;
  }
  .brand-logo-img{
    width:132px !important;
    max-height:50px !important;
    object-fit:contain;
  }
  .mobile-menu-toggle{
    grid-column:2;
    justify-self:center;
    display:grid !important;
    width:48px;
    height:48px;
    flex:0 0 48px;
    z-index:141;
  }
  .phone-link{
    grid-column:3;
    justify-self:start;
    order:initial;
    font-size:14px;
    padding:8px 10px;
  }
  .main-nav{
    position:fixed;
    top:66px;
    right:12px;
    left:12px;
    display:grid !important;
    grid-template-columns:1fr;
    gap:8px;
    padding:14px;
    background:rgba(12,10,8,.98);
    border:1px solid rgba(199,154,75,.45);
    box-shadow:0 24px 70px rgba(0,0,0,.45);
    transform:translateY(-14px);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    z-index:140;
  }
  body.mobile-nav-open .main-nav{
    transform:translateY(0);
    opacity:1;
    visibility:visible;
    pointer-events:auto;
  }
  .main-nav a{
    min-height:46px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(199,154,75,.18);
    background:rgba(255,255,255,.045);
  }
  body.mobile-nav-open::before{
    content:"";
    position:fixed;
    inset:66px 0 0;
    background:rgba(0,0,0,.28);
    z-index:119;
  }
  .hero-copy{
    transform:none !important;
  }
  .services .cards-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .gallery-preview-strip .carousel-track{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .floating-whatsapp{
    left:16px !important;
    bottom:18px !important;
    padding:10px 14px !important;
    min-height:44px;
    z-index:90;
  }
  body.mobile-nav-open .floating-whatsapp{
    z-index:80;
  }
}
@media(max-width:430px){
  .nav-wrap{
    grid-template-columns:minmax(76px,1fr) 48px minmax(92px,1fr);
    width:calc(100% - 20px) !important;
    max-width:calc(100% - 20px) !important;
  }
  .brand-logo-img{
    width:112px !important;
    max-height:46px !important;
  }
  .phone-link{
    font-size:13px;
    padding:8px 8px;
  }
  .hero h1{
    font-size:30px !important;
  }
  .hero-text{
    font-size:14.5px !important;
  }
  .trust-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media(max-width:360px){
  .brand-logo-img{
    width:96px !important;
  }
  .phone-link{
    font-size:12px;
    padding:7px 7px;
  }
  .mobile-menu-toggle{
    width:44px;
    height:44px;
  }
}

/* Final narrow RTL cropping guard */
@media(max-width:430px){
  .brand-image{
    justify-self:center !important;
  }
  .brand-logo-img{
    width:86px !important;
    max-height:40px !important;
  }
  .hero-copy{
    width:min(100%, 282px) !important;
    max-width:282px !important;
    margin-inline:auto !important;
  }
  .hero h1{
    inline-size:100% !important;
    max-inline-size:100% !important;
    font-size:27px !important;
  }
  .hero-text{
    inline-size:100% !important;
    max-inline-size:100% !important;
    font-size:13.5px !important;
  }
  .hero-actions{
    inline-size:100% !important;
    max-inline-size:100% !important;
  }
}
@media(max-width:360px){
  .brand-logo-img{
    width:76px !important;
  }
  .hero-copy{
    width:260px !important;
    max-width:260px !important;
  }
  .hero h1{
    font-size:25px !important;
  }
}

