
:root{
--bg:#07110f;--bg2:#0c1916;--panel:#10221d;--paper:#f2eee4;--paper2:#e7e0d0;
--lime:#cbd75f;--gold:#c6a56a;--text:#eef1e8;--muted:#9ba9a2;--ink:#12201c;
--line:rgba(255,255,255,.12);--darkline:rgba(12,30,25,.14);--max:1320px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,Arial,sans-serif;overflow-x:hidden;max-width:100vw}
a{text-decoration:none;color:inherit}button,input,textarea{font:inherit}.wrap{width:min(calc(100% - 52px),var(--max));margin:auto}
.nav{position:fixed;z-index:50;top:0;left:0;right:0;padding:16px 0;background:rgba(5,14,12,.96);backdrop-filter:blur(16px);border-bottom:0;transition:.35s}.nav.on{background:rgba(5,14,12,.98);border-bottom-color:transparent}
.navrow{display:flex;align-items:center;justify-content:space-between;gap:30px}.logo{flex:0 0 auto;margin-left:-8px}.logo{display:flex;align-items:center;gap:11px;font-size:13px;font-weight:700;letter-spacing:.22em}
.logo img{width:40px;height:40px;border-radius:50%;object-fit:cover;border:1px solid rgba(203,215,95,.35)}
.navlinks{display:flex;align-items:center;gap:25px;text-transform:uppercase;font-size:10px;letter-spacing:.18em;color:#f3f2e9}.navlinks a{opacity:1;color:#f3f2e9;text-shadow:0 1px 8px rgba(0,0,0,.28);transition:color .2s ease,opacity .2s ease}.navlinks a:hover{opacity:1;color:var(--lime)}
.navcta{padding:11px 15px;border:1px solid rgba(203,215,95,.5);color:var(--lime)!important;opacity:1!important}.hamb{display:none;background:none;color:white;border:1px solid var(--line);width:42px;height:42px;border-radius:50%}
.hero{min-height:100svh;display:flex;align-items:end;position:relative;overflow:hidden;background:linear-gradient(110deg,rgba(4,12,10,.96) 15%,rgba(5,16,13,.64) 52%,rgba(4,11,9,.82)),url('https://images.unsplash.com/photo-1519710164239-da123dc03ef4?auto=format&fit=crop&w=2200&q=88') center/cover}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,17,15,.96),transparent 48%);pointer-events:none}
.heroContent{position:relative;z-index:2;padding:150px 0 70px;max-width:100%;min-width:0;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:50px;align-items:end}
.eyebrow,.kicker{font-size:10px;letter-spacing:.32em;text-transform:uppercase;color:var(--lime)}h1{font:400 clamp(62px,8.5vw,138px)/.84 Georgia,serif;letter-spacing:-.065em;margin:20px 0 0;max-width:100%;overflow-wrap:normal;word-break:normal}
.heroSub{max-width:560px;color:#c0cbc4;line-height:1.85;margin-top:28px;font-size:15px}.actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:30px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border:1px solid rgba(255,255,255,.2);font-size:10px;letter-spacing:.2em;text-transform:uppercase;transition:.3s}.btn:hover{transform:translateY(-2px)}.btn.primary{background:var(--lime);color:#08120f;border-color:var(--lime)}
.heroPanel{justify-self:end;width:min(100%,450px);max-width:100%;min-width:0;border:1px solid rgba(255,255,255,.16);background:rgba(5,15,12,.42);backdrop-filter:blur(14px);padding:28px}.heroPanel .mini{color:#9faeaa;font-size:10px;letter-spacing:.2em;text-transform:uppercase}.heroPanel h2{font:400 40px/1.02 Georgia;margin:14px 0}.heroPanel p{color:#aebbb5;line-height:1.7;font-size:13px}.heroPanel .line{height:1px;background:var(--line);margin:22px 0}.heroPanel strong{font-size:13px;font-weight:500}.scroll{margin-top:25px;font-size:9px;letter-spacing:.25em;text-transform:uppercase;color:#8e9b95}
.marquee{padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;white-space:nowrap;color:#9aa69f;font-size:9px;letter-spacing:.3em;text-transform:uppercase}.marqueeTrack{width:min(calc(100% - 44px),var(--max));margin:0 auto;overflow:visible}.marquee span{display:inline-block;margin-right:55px}
.section{padding:125px 0}.light{background:var(--paper);color:var(--ink)}.dark{background:var(--bg2)}
.split{display:grid;grid-template-columns:.7fr 1.3fr;gap:90px}.display{font:400 clamp(44px,5vw,78px)/.94 Georgia;letter-spacing:-.045em;margin-top:16px}.lead{font-size:17px;line-height:1.9;color:#6e7c75;max-width:780px}.dark .lead{color:#a8b5ae}
.stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:60px;border-top:1px solid var(--darkline)}.stat{padding:25px 20px 0 0;border-right:1px solid var(--darkline)}.stat:last-child{border:0;padding-left:20px}.stat b{font:400 42px Georgia}.stat small{display:block;margin-top:7px;font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:#7b8781}
.productGrid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px;margin-top:55px}.productCard{position:relative;min-height:490px;overflow:hidden;background:#132821;border:1px solid var(--line);display:flex;align-items:end;padding:26px;isolation:isolate}.productCard:nth-child(1),.productCard:nth-child(4){grid-column:span 7}.productCard:nth-child(2),.productCard:nth-child(3),.productCard:nth-child(5){grid-column:span 5}
.productCard .photo{position:absolute;inset:0;background-size:cover;background-position:center;z-index:-2;transition:.8s}.productCard:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,10,8,.94),rgba(3,10,8,.08) 65%);z-index:-1}.productCard:hover .photo{transform:scale(1.07)}.productCard h3{font:400 38px/1 Georgia;margin:10px 0}.productCard p{max-width:510px;color:#b4c0ba;font-size:12px;line-height:1.7}.tag{font-size:9px;color:var(--lime);letter-spacing:.24em;text-transform:uppercase}
.sectionHead{display:flex;justify-content:space-between;align-items:end;gap:25px}.sectionHead .right{max-width:420px}
.features{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--darkline);margin-top:65px}.feature{background:var(--paper);padding:30px 24px;min-height:190px}.feature b{font:400 30px Georgia}.feature h3{font-size:12px;margin:35px 0 9px;text-transform:uppercase;letter-spacing:.12em}.feature p{font-size:12px;line-height:1.7;color:#738079}
.imageBand{min-height:650px;background:linear-gradient(90deg,rgba(5,14,12,.95),rgba(5,14,12,.35)),url('assets/vipram-factory-infrastructure.png') center/cover;display:flex;align-items:end}.imageBand .inner{padding:100px 0}.imageBand h2{font:400 clamp(52px,7vw,105px)/.88 Georgia;max-width:850px;margin:15px 0}.imageBand p{max-width:540px;color:#c1cbc5;line-height:1.8}
.gallery{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-auto-rows:270px;gap:12px;margin-top:55px}.galleryTile{background-size:cover;background-position:center;position:relative;overflow:hidden;display:block;text-decoration:none;cursor:pointer}.galleryTile:first-child{grid-row:span 2}.galleryTile span{position:absolute;left:clamp(10px,1.2vw,16px);bottom:clamp(10px,1.2vw,16px);display:block;width:max-content;max-width:calc(100% - 20px);box-sizing:border-box;background:rgba(7,17,15,.78);color:#f3f1e8;padding:clamp(8px,0.7vw,10px) clamp(10px,0.9vw,13px);font-size:clamp(8px,.62vw,10px);line-height:1.15;text-transform:uppercase;letter-spacing:clamp(.14em,.18vw,.2em);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.galleryTile:hover span,.galleryTile:focus-visible span{background:rgba(7,17,15,.92)}.galleryTile:focus-visible{outline:2px solid rgba(190,205,92,.9);outline-offset:3px}
.contactGrid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.details{margin-top:42px;display:grid;gap:0}.details a,.details div{padding:23px 0;border-bottom:1px solid var(--darkline);font-size:18px;line-height:1.5;font-weight:600;letter-spacing:-.01em}.details small{display:block;color:#71827b;font-size:11px;line-height:1.2;font-weight:700;letter-spacing:.24em;text-transform:uppercase;margin-bottom:9px}.details a{transition:.25s}.details a:hover{color:#30483f}
.form{display:grid;gap:11px}.field{width:100%;padding:16px;background:#0c1b17;border:1px solid var(--line);color:#fff;outline:none}.field:focus{border-color:rgba(203,215,95,.7)}textarea.field{min-height:150px;resize:vertical}
.map{margin-top:50px}.mapFrame{position:relative;height:430px;overflow:hidden;border:1px solid rgba(24,61,43,.18);background:#dfe9e3;box-shadow:0 20px 50px rgba(20,40,30,.10)}.mapFrame iframe{width:100%;height:100%;display:block;border:0;filter:saturate(.92) contrast(.98)}.mapOverlay{position:absolute;left:24px;bottom:24px;display:flex;align-items:center;justify-content:space-between;gap:28px;min-width:min(640px,calc(100% - 48px));padding:20px 22px;background:rgba(10,23,20,.92);color:#f5f5eb;border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(12px);box-shadow:0 14px 35px rgba(0,0,0,.18)}.mapOverlay>div{display:flex;flex-direction:column;gap:5px}.mapEyebrow{font-size:10px!important;letter-spacing:.22em;text-transform:uppercase;color:var(--lime)!important}.mapOverlay strong{font-family:Georgia,serif;font-size:25px;font-weight:500}.mapOverlay span:last-child{font-size:14px;color:#c7d0ca}.mapOverlay a{white-space:nowrap;text-decoration:none;color:#101914;background:var(--lime);padding:13px 16px;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.mapOverlay a:hover{transform:translateY(-1px);filter:brightness(1.04)}
.footer{padding:32px 0;border-top:1px solid var(--line);font-size:11px;letter-spacing:.12em;color:#89968f}.footerRow{display:flex;justify-content:space-between;gap:20px;align-items:center}.socials{display:flex;gap:12px;align-items:center}.social{position:relative;z-index:5;cursor:pointer;width:48px;height:48px;border:1px solid rgba(255,255,255,.18);display:grid;place-items:center;border-radius:50%;transition:.25s;color:#d8dfd9;background:rgba(255,255,255,.025)}.social svg{width:22px;height:22px;display:block}.social:hover{border-color:var(--lime);color:var(--lime);transform:translateY(-2px)}
.reveal{opacity:0;transform:translateY(25px);transition:.8s ease}.reveal.in{opacity:1;transform:none}
.pageHero{padding:145px 0 80px;background:radial-gradient(circle at 70% 30%,rgba(203,215,95,.13),transparent 28%),var(--bg)}.pageHero h1{font-size:clamp(55px,7vw,105px);max-width:900px}.crumb{margin-top:22px;color:#84918b;font-size:10px;letter-spacing:.2em;text-transform:uppercase}.aboutHeroGrid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.72fr);gap:clamp(40px,7vw,110px);align-items:center;min-height:500px}.aboutHeroCopy{position:relative;z-index:2;transform:translateY(-34px)}.aboutHeroVisual{position:relative;height:min(500px,42vw);min-height:360px;overflow:hidden;background:#111813;border:1px solid rgba(255,255,255,.08);box-shadow:0 30px 80px rgba(0,0,0,.22)}.aboutHeroVisual img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.72) contrast(1.05);transform:scale(1.03)}.aboutHeroVisualShade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,17,13,.88) 0%,rgba(8,17,13,.35) 45%,rgba(8,17,13,.48) 100%),linear-gradient(0deg,rgba(8,17,13,.7),transparent 55%)}.aboutHeroVisualLabel{position:absolute;left:24px;bottom:22px;color:rgba(244,242,233,.7);font-size:9px;letter-spacing:.2em;text-transform:uppercase}.aboutHero .aboutHeroVisual:after{content:"";position:absolute;inset:14px;border:1px solid rgba(255,255,255,.1);pointer-events:none}@media(max-width:900px){.aboutHeroGrid{grid-template-columns:1fr;min-height:0;gap:42px}.aboutHeroCopy{transform:none}.aboutHeroVisual{height:420px;min-height:0;max-width:760px}.pageHero{padding-top:120px}}
.detailHero{display:grid;grid-template-columns:1fr 1fr;min-height:650px}.detailPhoto{background-size:cover;background-position:center;min-height:550px}.detailCopy{padding:90px 8vw;background:var(--paper);color:var(--ink);display:flex;flex-direction:column;justify-content:center}.detailCopy h1{font-size:clamp(52px,6vw,92px)}.detailCopy .lead{margin-top:25px}
.specs{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--darkline);margin-top:50px}.spec{background:var(--paper);padding:22px}.spec small{font-size:9px;text-transform:uppercase;letter-spacing:.16em;color:#77847d}.spec b{display:block;font:400 27px Georgia;margin-top:9px}
.mobileMenu{display:none}
@media(max-width:1100px){.navlinks{display:none}.hamb{display:block}.heroContent,.split,.contactGrid,.detailHero{grid-template-columns:minmax(0,1fr)}.heroPanel{justify-self:start;margin-top:30px}.features{grid-template-columns:1fr 1fr}.productGrid{grid-template-columns:1fr 1fr}.productCard,.productCard:nth-child(n){grid-column:auto}.gallery{grid-template-columns:1fr 1fr}.galleryTile:first-child{grid-row:auto}.detailPhoto{min-height:430px}.specs{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.wrap{width:calc(100% - 30px);max-width:calc(100% - 30px)}.section{padding:85px 0}.heroContent{padding-top:125px}.hero h1{font-size:60px}.heroPanel{width:100%}.stats,.features,.productGrid,.gallery,.specs{grid-template-columns:1fr}.productCard,.productCard:nth-child(n){min-height:360px}.gallery{grid-auto-rows:260px;gap:10px}.galleryTile span{left:12px;bottom:12px;max-width:calc(100% - 24px);padding:8px 10px;font-size:9px;letter-spacing:.16em}.sectionHead{display:block}.sectionHead .right{margin-top:22px}.footerRow{align-items:flex-start;flex-direction:column}.detailCopy{padding:70px 25px}.navcta{display:none}}

/* Safari overflow guard */
img,svg,video,iframe{max-width:100%;} .heroContent>*{min-width:0;} .productGrid>*{min-width:0;}

/* V4 centered hero fix */
.heroContent{margin-left:auto;margin-right:auto;box-sizing:border-box;}
.heroContent>div{min-width:0;}

/* V6 footer polish */
.footerRow>div:first-child{font-size:11px;letter-spacing:.13em;}
.footerSlogan{font-size:17px!important;letter-spacing:.07em!important;color:#aebbb3;white-space:nowrap;}

/* V8 contact details polish */
@media(max-width:600px){
  .details{margin-top:30px}
  .details a,.details div{font-size:16px;padding:20px 0}
  .details small{font-size:10px;margin-bottom:8px}
}

/* V9 product imagery + front-and-centre brand partnership treatment */
.productMulti .photoMain{z-index:-5}.productMulti .photoSide{z-index:-3;left:auto;width:24%;background-size:cover;border-left:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16);transition:.8s}.productMulti .photoSideA{right:24px;top:24px;bottom:155px}.productMulti .photoSideB{right:24px;bottom:24px;height:105px}.productMulti .photoSideC{right:calc(24px + 24% + 10px);top:24px;bottom:155px;width:18%;opacity:.9}.productMulti:hover .photoSideA{transform:translateX(-8px)}.productMulti:hover .photoSideB{transform:translateX(-8px)}.productMulti:hover .photoSideC{transform:translateX(-6px)}
.partnership{background:var(--bg);padding-top:90px;padding-bottom:90px}.partnershipGrid{display:grid;grid-template-columns:1.15fr .85fr;min-height:560px;border:1px solid var(--line);background:#0b1814}.partnershipVisual{position:relative;overflow:hidden;min-height:560px}.partnershipImage{position:absolute;top:22px;bottom:22px;width:30%;background-size:cover;background-position:center;border:1px solid rgba(255,255,255,.12);transition:.8s}.partnershipImageA{left:22px;background-image:linear-gradient(0deg,rgba(3,11,9,.45),rgba(3,11,9,.05)),url('https://images.unsplash.com/photo-1519710164239-da123dc03ef4?auto=format&fit=crop&w=1200&q=88')}.partnershipImageB{left:35%;background-image:linear-gradient(0deg,rgba(3,11,9,.45),rgba(3,11,9,.05)),url('https://images.unsplash.com/photo-1565793298595-6a879b1d9492?auto=format&fit=crop&w=1200&q=88')}.partnershipImageC{right:22px;background-image:linear-gradient(0deg,rgba(3,11,9,.45),rgba(3,11,9,.05)),url('https://images.unsplash.com/photo-1503387762-592deb58ef4e?auto=format&fit=crop&w=1200&q=88')}.partnershipVisual:hover .partnershipImageA{transform:translateY(-6px)}.partnershipVisual:hover .partnershipImageB{transform:translateY(6px)}.partnershipVisual:hover .partnershipImageC{transform:translateY(-6px)}.partnershipStamp{position:absolute;left:28px;bottom:28px;border:1px solid rgba(203,215,95,.55);padding:10px 13px;color:var(--lime);font-size:9px;letter-spacing:.25em}.partnershipCopy{padding:65px 55px;display:flex;flex-direction:column;justify-content:center}.partnershipCopy .display{margin-top:16px}.partnershipNote{margin-top:28px;padding-top:18px;border-top:1px solid var(--line);font-size:10px;line-height:1.7;letter-spacing:.08em;color:#819089}
@media(max-width:950px){.partnershipGrid{grid-template-columns:1fr}.partnershipVisual{min-height:420px}.partnershipCopy{padding:55px 35px}}
@media(max-width:600px){.productMulti .photoSide{display:none}.partnership{padding-top:70px;padding-bottom:70px}.partnershipVisual{min-height:320px}.partnershipCopy{padding:45px 25px}.partnershipCopy .display{font-size:48px}}

@media(max-width:600px){
  .productMulti .photoSideC{display:none}
  .productMulti .photoSideA{width:30%;right:18px;top:18px;bottom:120px}
  .productMulti .photoSideB{right:18px;bottom:18px;width:30%;height:72px}
  .partnershipImage{top:15px;bottom:15px}
  .partnershipImageA{left:15px;width:29%}
  .partnershipImageB{left:35.5%;width:29%}
  .partnershipImageC{right:15px;width:29%}
}

/* V17 — clean, premium campaign presentation using supplied campaign photography */
.premiumPartnership{padding-top:120px;padding-bottom:110px;background:var(--bg)}
.partnershipIntro{display:grid;grid-template-columns:1fr .82fr;gap:90px;align-items:end;margin-bottom:58px}
.partnershipIntro .display em{color:var(--gold);font-style:normal}
.partnershipIntroCopy{max-width:560px}
.partnershipIntroCopy .lead{margin:0}
.campaignMosaic{display:grid;grid-template-columns:1.45fr .78fr;gap:14px;min-height:720px}
.campaignFeature,.campaignSmall{position:relative;display:block;overflow:hidden;border:1px solid rgba(255,255,255,.13);background:#0b1714;isolation:isolate}
.campaignFeature img,.campaignSmall img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 38%;transition:transform 1s cubic-bezier(.2,.7,.2,1);display:block}
.campaignFeature:after,.campaignSmall:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,9,7,.94) 0%,rgba(3,9,7,.18) 48%,rgba(3,9,7,.04) 100%);z-index:0}
.campaignFeature:hover img,.campaignSmall:hover img{transform:scale(1.035)}
.campaignStack{display:grid;grid-template-rows:1fr 1fr;gap:14px}
.campaignVideoCard{position:relative;background:#06110e;overflow:hidden}
.campaignVideo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;background:#06110e}
.campaignVideoLabel{position:absolute;z-index:2;left:24px;right:24px;bottom:22px;pointer-events:none;color:#fff;display:flex;flex-direction:column;gap:6px}
.campaignVideoLabel span{font-size:9px;letter-spacing:.24em;text-transform:uppercase;color:var(--lime)}
.campaignVideoLabel strong{font:400 clamp(22px,2.1vw,34px)/1 Georgia,serif;letter-spacing:-.025em}
.campaignVideoCard video::-webkit-media-controls-panel{background:linear-gradient(transparent,rgba(0,0,0,.72))}
.campaignOverlay{position:absolute;z-index:1;left:30px;right:30px;bottom:28px;display:flex;flex-direction:column;align-items:flex-start;color:#fff}
.campaignOverlay span{font-size:9px;letter-spacing:.27em;text-transform:uppercase;color:var(--lime);margin-bottom:11px}
.campaignOverlay strong{font:400 clamp(30px,3.1vw,52px)/.95 Georgia;letter-spacing:-.035em}
.campaignSmall .campaignOverlay strong{font-size:clamp(25px,2.3vw,38px)}
.campaignOverlay small{margin-top:14px;font-size:9px;letter-spacing:.23em;color:#d1d8d3}
.campaignRail{display:grid;grid-template-columns:repeat(3,1fr) auto;gap:0;margin-top:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);align-items:center}
.campaignRail>div{min-height:78px;display:flex;align-items:center;gap:13px;padding:0 24px;border-right:1px solid var(--line)}
.campaignRail b{font:400 25px Georgia;color:var(--lime)}
.campaignRail span{font-size:10px;letter-spacing:.17em;text-transform:uppercase;color:#c0cbc5}
.campaignRail .btn{margin-left:20px;white-space:nowrap}
.campaignGallery div{background-size:cover;background-position:center}
@media(max-width:950px){.partnershipIntro{grid-template-columns:1fr;gap:25px}.campaignMosaic{grid-template-columns:1fr;min-height:auto}.campaignFeature{min-height:650px}.campaignStack{min-height:760px}.campaignRail{grid-template-columns:1fr 1fr}.campaignRail>div:nth-child(2){border-right:0}.campaignRail>div:nth-child(3){border-top:1px solid var(--line)}.campaignRail .btn{margin:0 20px;justify-self:start}}
@media(max-width:600px){.premiumPartnership{padding-top:85px;padding-bottom:80px}.partnershipIntro{margin-bottom:35px}.campaignFeature{min-height:500px}.campaignStack{min-height:650px}.campaignSmall{min-height:318px}.campaignOverlay{left:20px;right:20px;bottom:20px}.campaignOverlay strong{font-size:31px}.campaignRail{grid-template-columns:1fr}.campaignRail>div{border-right:0!important;border-bottom:1px solid var(--line);min-height:65px;padding:0 15px}.campaignRail>div:last-of-type{border-bottom:0}.campaignRail .btn{margin:14px 0}.campaignGallery{grid-template-columns:1fr}}

/* V18 — supplied sponsorship campaign image as the first-screen hero */
.heroSponsorship{min-height:calc(100svh - 78px);position:relative;display:flex;align-items:flex-end;overflow:hidden;background:#07110e}
.heroSponsorshipImage{position:absolute;inset:0;background-image:url('assets/vipram-sponsorship-hero.png');background-size:cover;background-position:center center;background-repeat:no-repeat}
.heroSponsorshipShade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,10,8,.08) 0%,rgba(3,10,8,.03) 52%,rgba(3,10,8,.56) 100%);pointer-events:none}
.heroSponsorshipActions{position:relative;z-index:2;display:flex;gap:12px;flex-wrap:wrap;margin:0 auto;padding:0 0 38px;width:min(100% - 90px,1360px);box-sizing:border-box}
.heroSponsorshipActions .heroGhost{background:rgba(5,14,12,.45);backdrop-filter:blur(10px);border-color:rgba(255,255,255,.35)}
.heroSponsorshipScroll{position:absolute;z-index:2;right:45px;bottom:45px;color:#e8eee9;font-size:9px;letter-spacing:.25em;text-transform:uppercase;writing-mode:vertical-rl;opacity:.85}
@media(max-width:950px){.heroSponsorship{min-height:calc(100svh - 70px)}.heroSponsorshipActions{width:calc(100% - 50px);padding-bottom:28px}.heroSponsorshipScroll{right:20px;bottom:28px}}
@media(max-width:600px){.heroSponsorship{min-height:72svh}.heroSponsorshipImage{background-position:center center}.heroSponsorshipActions{width:calc(100% - 30px);padding-bottom:22px}.heroSponsorshipActions .btn{font-size:10px;padding:13px 16px}.heroSponsorshipScroll{display:none}}

/* V20 — transparent hero header: keep the campaign image fully visible; only deepen nav text */
.nav{background:rgba(0,0,0,0)!important;backdrop-filter:none!important;border-bottom:1px solid rgba(8,38,31,.12)!important}
.nav.on{background:rgba(0,0,0,0)!important;border-bottom-color:rgba(8,38,31,.16)!important}
.navrow{justify-content:space-between}
.logo{margin-left:-18px}
.navlinks{color:#07382d!important}
.navlinks a{color:#07382d!important;text-shadow:0 1px 8px rgba(255,255,255,.42)!important}
.navlinks a:hover{color:#587000!important}
.navcta{color:#07382d!important;border-color:rgba(7,56,45,.52)!important;background:rgba(255,255,255,.06)}
.hamb{color:#07382d;border-color:rgba(7,56,45,.32)}
@media(max-width:600px){.logo{margin-left:-8px}.nav{padding:12px 0}}

/* V21 — readable navigation over both light and dark areas of the sponsorship hero */
.nav{background:transparent!important;backdrop-filter:none!important;border-bottom-color:rgba(255,255,255,.10)!important}
.nav.on{background:transparent!important;border-bottom-color:rgba(255,255,255,.10)!important}
.navlinks{color:#f4ecd9!important}
.navlinks a{color:#f4ecd9!important;opacity:1!important;-webkit-text-stroke:.35px rgba(0,0,0,.72);text-shadow:0 1px 2px rgba(0,0,0,.98),0 0 5px rgba(0,0,0,.9),0 0 12px rgba(0,0,0,.5)!important}
.navlinks a:hover{color:#d4df5d!important;-webkit-text-stroke:.25px rgba(0,0,0,.8)}
.navcta{color:#f4ecd9!important;border-color:rgba(244,236,217,.78)!important;background:rgba(5,14,12,.10)!important;text-shadow:0 1px 2px rgba(0,0,0,.98),0 0 5px rgba(0,0,0,.8)!important}
.navcta:hover{color:#d4df5d!important;border-color:#d4df5d!important;background:rgba(5,14,12,.16)!important}

.mapLink{display:flex;align-items:center;justify-content:space-between;gap:24px;text-decoration:none;color:inherit;padding:28px 30px;border:1px solid rgba(24,61,43,.18);background:rgba(255,255,255,.55);transition:.25s ease}.mapLink span{display:flex;flex-direction:column;gap:8px}.mapLink span b{font-size:18px;color:#183d2b}.mapLink span{font-size:15px}.mapLink strong{white-space:nowrap;color:#183d2b}.mapLink:hover{transform:translateY(-2px);border-color:rgba(24,61,43,.4);box-shadow:0 14px 30px rgba(20,40,30,.08)}
@media(max-width:700px){.mapFrame{height:420px}.mapOverlay{left:14px;bottom:14px;min-width:0;width:calc(100% - 28px);align-items:flex-start;flex-direction:column;gap:14px}.mapOverlay a{white-space:normal;width:100%;text-align:center}}

/* V26 — remove navbar divider completely */
.nav,
.nav.on {
  border-bottom: 0 !important;
  border-bottom-color: transparent !important;
}


/* V29 — exact supplied Vipram emblem + complete branded lockup; no header overlap */
.nav{position:sticky!important;top:0;z-index:50;padding:12px 0;background:rgba(5,14,12,.96)!important;backdrop-filter:blur(16px)!important;border-bottom:0!important}
.nav.on{background:rgba(5,14,12,.98)!important;border-bottom:0!important}
.logo{display:flex!important;align-items:center!important;gap:12px!important;width:420px!important;height:88px!important;margin-left:-8px!important;overflow:visible!important;color:#f4ecd9!important}
.logoMark{display:flex;align-items:center;justify-content:center;width:82px;height:82px;flex:0 0 82px}
.logoMark img{display:block;width:78px;height:78px;object-fit:contain;border:0!important;border-radius:0!important;max-width:none!important}
.logoType{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;line-height:1;color:#f4ecd9;white-space:nowrap}
.logoType b{font-family:Georgia,'Times New Roman',serif;font-size:31px;letter-spacing:.06em;font-weight:700;line-height:.92;text-shadow:0 2px 10px rgba(0,0,0,.65)}
.logoType strong{position:relative;margin-top:6px;padding:6px 27px 0;font-family:Arial,sans-serif;font-size:17px;letter-spacing:.42em;font-weight:700;color:#f4ecd9}
.logoType strong:before,.logoType strong:after{content:"";position:absolute;top:50%;width:20px;height:1px;background:var(--gold)}
.logoType strong:before{left:0}.logoType strong:after{right:0}
.logoType small{margin-top:8px;font-family:'Noto Sans Devanagari','Nirmala UI',Arial,sans-serif;font-size:9px;letter-spacing:.03em;color:#d9b878;text-shadow:0 1px 7px rgba(0,0,0,.7)}
.heroSponsorship{min-height:calc(100svh - 112px)!important}
@media(max-width:1100px){.logo{width:330px!important;height:72px!important}.logoMark{width:64px;height:64px;flex-basis:64px}.logoMark img{width:62px;height:62px}.logoType b{font-size:24px}.logoType strong{font-size:14px;padding-top:5px}.logoType small{font-size:8px}.heroSponsorship{min-height:calc(100svh - 96px)!important}}
@media(max-width:600px){.nav{padding:8px 0}.logo{width:255px!important;height:60px!important;margin-left:-8px!important;gap:8px!important}.logoMark{width:50px;height:50px;flex-basis:50px}.logoMark img{width:48px;height:48px}.logoType b{font-size:18px;letter-spacing:.04em}.logoType strong{font-size:11px;letter-spacing:.34em;margin-top:3px;padding:4px 18px 0}.logoType strong:before,.logoType strong:after{width:13px}.logoType small{font-size:6.5px;margin-top:5px}.heroSponsorship{min-height:72svh!important}}

/* V30 — integrated hero header: no hard black band, no hero overlap/cropping from header */
body:has(.heroSponsorship) .nav{
  position:absolute;
  background:linear-gradient(180deg,rgba(4,11,9,.82) 0%,rgba(4,11,9,.48) 58%,rgba(4,11,9,0) 100%);
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
  padding:16px 0 34px;
  border-bottom:0;
}
body:has(.heroSponsorship) .nav.on{
  background:linear-gradient(180deg,rgba(4,11,9,.88) 0%,rgba(4,11,9,.52) 62%,rgba(4,11,9,0) 100%);
  border-bottom:0;
}
body:has(.heroSponsorship) .heroSponsorship{
  min-height:100svh!important;
}
body:has(.heroSponsorship) .heroSponsorshipImage{
  background-position:center center;
}
@media(max-width:1100px){
  body:has(.heroSponsorship) .nav{padding:12px 0 30px}
  body:has(.heroSponsorship) .heroSponsorship{min-height:100svh!important}
}
@media(max-width:600px){
  body:has(.heroSponsorship) .nav{padding:8px 0 24px}
  body:has(.heroSponsorship) .heroSponsorship{min-height:100svh!important}
}

/* V33: integrated, non-sticky navigation — hero keeps its full campaign frame */
.nav{position:absolute!important;top:0!important;left:0!important;right:0!important;z-index:50!important;background:transparent!important;backdrop-filter:none!important;border-bottom:0!important;box-shadow:none!important}
.nav.on{position:absolute!important;top:0!important;background:transparent!important;border-bottom:0!important;box-shadow:none!important}
body:has(.heroSponsorship) .nav,
body:has(.heroSponsorship) .nav.on{position:absolute!important;background:linear-gradient(180deg,rgba(3,10,8,.72) 0%,rgba(3,10,8,.28) 55%,rgba(3,10,8,0) 100%)!important;backdrop-filter:none!important;border-bottom:0!important}
body:has(.heroSponsorship) .heroSponsorship{min-height:100svh!important;height:100svh!important}
body:has(.heroSponsorship) .heroSponsorshipImage{inset:0!important;background-size:cover!important;background-position:center center!important}

/* V34 — premium hero header: visually integrated, but never sits over campaign copy */
body:has(.heroSponsorship) .nav{
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  z-index:50!important;
  padding:14px 0 18px!important;
  background:linear-gradient(180deg,rgba(3,10,8,.92) 0%,rgba(3,10,8,.72) 72%,rgba(3,10,8,.20) 100%)!important;
  backdrop-filter:blur(8px)!important;
  -webkit-backdrop-filter:blur(8px)!important;
  border:0!important;
  box-shadow:0 10px 35px rgba(0,0,0,.16)!important;
}
body:has(.heroSponsorship) .nav.on{position:absolute!important;background:linear-gradient(180deg,rgba(3,10,8,.92) 0%,rgba(3,10,8,.72) 72%,rgba(3,10,8,.20) 100%)!important;border:0!important}
body:has(.heroSponsorship) .heroSponsorship{
  min-height:calc(100svh + 118px)!important;
  height:auto!important;
  align-items:flex-end!important;
  padding-top:118px!important;
  box-sizing:border-box!important;
}
body:has(.heroSponsorship) .heroSponsorshipImage{
  inset:118px 0 0!important;
  background-size:cover!important;
  background-position:center top!important;
}
body:has(.heroSponsorship) .heroSponsorshipShade{top:118px!important}
@media(max-width:1100px){
 body:has(.heroSponsorship) .nav{padding:12px 0 16px!important}
 body:has(.heroSponsorship) .heroSponsorship{min-height:calc(100svh + 96px)!important;padding-top:96px!important}
 body:has(.heroSponsorship) .heroSponsorshipImage{inset:96px 0 0!important}
 body:has(.heroSponsorship) .heroSponsorshipShade{top:96px!important}
}
@media(max-width:600px){
 body:has(.heroSponsorship) .nav{padding:8px 0 12px!important}
 body:has(.heroSponsorship) .heroSponsorship{min-height:calc(100svh + 78px)!important;padding-top:78px!important}
 body:has(.heroSponsorship) .heroSponsorshipImage{inset:78px 0 0!important}
 body:has(.heroSponsorship) .heroSponsorshipShade{top:78px!important}
}

/* V35 — Products dropdown */
.navDropdown{position:relative;display:flex;align-items:center;height:100%}.navDropBtn{appearance:none;border:0;background:none;color:#f4ecd9;font:inherit;text-transform:uppercase;letter-spacing:.18em;font-size:10px;padding:8px 0;cursor:pointer;text-shadow:0 1px 2px rgba(0,0,0,.98),0 0 5px rgba(0,0,0,.8)}.navDropBtn span{display:inline-block;margin-left:5px;font-size:12px;transition:transform .2s ease}.navDropdown.open .navDropBtn span{transform:rotate(180deg)}.navDropdownMenu{position:absolute;top:calc(100% + 14px);right:-12px;min-width:340px;padding:12px;background:rgba(5,14,12,.98);border:1px solid rgba(244,236,217,.22);box-shadow:0 20px 50px rgba(0,0,0,.35);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .2s ease,transform .2s ease,visibility .2s ease;z-index:80}.navDropdown.open .navDropdownMenu{opacity:1;visibility:visible;transform:translateY(0)}.navDropdownMenu a{display:block!important;padding:16px 18px;color:#f4ecd9!important;font-size:13px!important;letter-spacing:.06em!important;text-transform:none!important;white-space:nowrap;text-shadow:none!important}.navDropdownMenu a:hover{background:rgba(212,223,93,.10);color:#d4df5d!important}.navDropdownMenu a+a{border-top:1px solid rgba(244,236,217,.08)}
@media(max-width:1100px){.navlinks.mobileOpen{display:flex;position:absolute;top:100%;left:15px;right:15px;flex-direction:column;align-items:stretch;gap:0;padding:10px;background:rgba(5,14,12,.98);border:1px solid rgba(244,236,217,.15);box-shadow:0 20px 50px rgba(0,0,0,.3)}.navlinks.mobileOpen>a,.navlinks.mobileOpen .navDropBtn{padding:13px 14px}.navDropdown{display:block}.navDropdownMenu{position:static;display:none;min-width:0;margin:0 8px 8px;padding:6px;transform:none;opacity:1;visibility:visible;box-shadow:none}.navDropdown.open .navDropdownMenu{display:block}.navDropBtn{width:100%;text-align:left}.navDropdownMenu a{white-space:normal!important;font-size:13px!important;padding:14px 16px!important}}

/* V37 — readable navigation on all inner pages; homepage hero header stays unchanged */
body:not(:has(.heroSponsorship)) .nav,
body:not(:has(.heroSponsorship)) .nav.on{
  position:relative!important;
  top:auto!important;
  left:auto!important;
  right:auto!important;
  z-index:50!important;
  background:linear-gradient(100deg,#06110e 0%,#081713 55%,#0b1d17 100%)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  border:0!important;
  box-shadow:0 12px 30px rgba(0,0,0,.18)!important;
}
body:not(:has(.heroSponsorship)) .navlinks,
body:not(:has(.heroSponsorship)) .navlinks a,
body:not(:has(.heroSponsorship)) .navDropBtn,
body:not(:has(.heroSponsorship)) .navcta{
  color:#f4ecd9!important;
  text-shadow:0 1px 3px rgba(0,0,0,.8)!important;
}
body:not(:has(.heroSponsorship)) .navcta{
  border-color:rgba(244,236,217,.62)!important;
  background:rgba(255,255,255,.025)!important;
}
body:not(:has(.heroSponsorship)) .navlinks a:hover,
body:not(:has(.heroSponsorship)) .navDropBtn:hover,
body:not(:has(.heroSponsorship)) .navcta:hover{
  color:#d4df5d!important;
}

/* Context-aware section labels: dark green on light surfaces, light accent on dark surfaces */
.light .kicker,.light .eyebrow,.detailCopy .kicker{color:#183f32}
.dark .kicker,.dark .eyebrow,.imageBand .kicker,.hero .kicker,.hero .eyebrow,.pageHero .kicker,.pageHero .eyebrow{color:var(--lime)}

/* V41 — Products dropdown opens on hover on desktop; touch devices keep tap behavior */
@media (min-width:1101px){
  .navDropdownMenu{top:calc(100% + 4px)}
  .navDropdown:hover .navDropdownMenu,
  .navDropdown:focus-within .navDropdownMenu{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
  }
  .navDropdown:hover .navDropBtn span,
  .navDropdown:focus-within .navDropBtn span{transform:rotate(180deg)}
}

/* V43 — keep supplied product artwork fully visible and visually integrated with the existing Vipram dark-green language */
.immersiveProductHero{min-height:calc(100svh - 78px);margin-top:0;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);background:var(--bg);overflow:hidden;border-bottom:1px solid var(--line)}
.immersiveProductVisual{position:relative;min-height:720px;display:flex;align-items:center;justify-content:center;padding:70px 7vw;background:radial-gradient(circle at 50% 45%,rgba(46,92,70,.22),transparent 55%),linear-gradient(145deg,#07110f,#0d211a);overflow:hidden}
.immersiveProductVisual:before{content:"";position:absolute;width:58%;height:75%;border-radius:50%;background:rgba(203,215,95,.08);filter:blur(70px);pointer-events:none}
.immersiveProductVisual img{position:relative;z-index:2;display:block;width:auto;height:auto;max-width:100%;max-height:690px;object-fit:contain;object-position:center;filter:drop-shadow(0 35px 45px rgba(0,0,0,.38));transition:transform 1s cubic-bezier(.2,.7,.2,1),filter .6s ease}
.immersiveProductVisual:hover img{transform:translateY(-7px) scale(1.012);filter:drop-shadow(0 45px 55px rgba(0,0,0,.46))}
.productVisualLabel{position:absolute;z-index:3;top:27px;left:34px;font-size:9px;letter-spacing:.28em;text-transform:uppercase;color:var(--lime);opacity:.85}
.immersiveProductCopy{display:flex;flex-direction:column;justify-content:center;padding:90px clamp(42px,6vw,95px);background:var(--bg2);border-left:1px solid var(--line)}
.immersiveProductCopy h1{font-size:clamp(55px,6vw,96px);line-height:.86;color:#eef1e8;margin-top:20px;max-width:850px}
.immersiveProductCopy .lead{color:#aebbb5;max-width:650px;margin-top:28px}
.productClaimRail{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px;max-width:650px}
.productClaimRail span{padding:9px 12px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.025);color:#c9d1cc;font-size:9px;letter-spacing:.14em;text-transform:uppercase}
.productInfoGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--darkline);margin-top:60px;border:1px solid var(--darkline)}
.productInfoGrid>div{background:var(--paper);padding:28px 22px;min-height:125px}.productInfoGrid b{display:block;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#183f32}.productInfoGrid span{display:block;margin-top:12px;color:#40534b;font-size:14px;line-height:1.55}
.productImageStory{display:grid;grid-template-columns:.78fr 1.22fr;gap:70px;align-items:center}.imageFrame{background:#081511;border:1px solid var(--line);min-height:600px;display:flex;align-items:center;justify-content:center;padding:42px;overflow:hidden}.imageFrame img{display:block;max-width:100%;max-height:700px;width:auto;height:auto;object-fit:contain;filter:drop-shadow(0 28px 38px rgba(0,0,0,.42));transition:transform .9s cubic-bezier(.2,.7,.2,1)}.imageFrame:hover img{transform:scale(1.018)}
@media(max-width:1000px){.immersiveProductHero{grid-template-columns:1fr;margin-top:0}.immersiveProductVisual{min-height:620px}.immersiveProductCopy{border-left:0;border-top:1px solid var(--line);padding:80px 7vw}.productInfoGrid{grid-template-columns:1fr 1fr}.productImageStory{grid-template-columns:1fr;gap:40px}.imageFrame{min-height:520px}}
@media(max-width:600px){.immersiveProductHero{margin-top:0}.immersiveProductVisual{min-height:560px;padding:58px 24px 45px}.immersiveProductVisual img{max-height:490px;max-width:92%}.productVisualLabel{top:20px;left:20px;font-size:8px}.immersiveProductCopy{padding:62px 24px}.immersiveProductCopy h1{font-size:52px}.immersiveProductCopy .lead{font-size:15px}.productClaimRail{gap:6px}.productClaimRail span{font-size:8px;padding:8px 9px}.productInfoGrid{grid-template-columns:1fr}.productInfoGrid>div{min-height:105px}.productImageStory{gap:30px}.imageFrame{min-height:430px;padding:22px}.imageFrame img{max-height:520px}}
/* V43 product collection imagery: preserve the supplied sheet proportions instead of cropping them into backgrounds */
.productSpotlight{background:linear-gradient(145deg,#0a1713,#12261e)}
.productSpotlight img{object-fit:contain;padding:34px 12%;background:radial-gradient(circle at 50% 45%,rgba(255,255,255,.06),transparent 58%)}
.productSpotlight:after{background:linear-gradient(180deg,rgba(3,10,8,.02) 25%,rgba(3,10,8,.22) 55%,rgba(3,10,8,.94) 100%)}
@media(max-width:600px){.productSpotlight img{padding:24px 14%}}

/* Footer social + slogan correction */
.socials .social{flex:0 0 48px;}
.footerSlogan{font-family:inherit;}
@media(max-width:700px){.footerSlogan{font-size:15px!important;white-space:normal;text-align:left;line-height:1.5}.socials{gap:10px}.social{width:46px;height:46px}}

/* V48 — Hardwood product detail section: keep the existing visual system, but give the product description a complete editorial flow. */
.productDetailIntro{margin-top:34px;gap:70px;align-items:start}.productDetailIntro .lead{max-width:680px}
@media(max-width:1100px){.productDetailIntro{grid-template-columns:1fr 1fr;gap:45px}}
@media(max-width:600px){.productDetailIntro{grid-template-columns:1fr;gap:8px}}

/* V55 — New homepage hero: cinematic forest / timber direction based on supplied reference */
body:has(.vipramHero) .nav{
  position:absolute!important;top:0!important;left:0!important;right:0!important;z-index:80!important;
  background:linear-gradient(180deg,rgba(3,10,7,.82) 0%,rgba(3,10,7,.32) 78%,transparent 100%)!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;border:0!important;box-shadow:none!important;
  padding:18px 0 24px!important;
}
body:has(.vipramHero) .navlinks a,body:has(.vipramHero) .navDropBtn{color:#f6f0e2!important}
body:has(.vipramHero) .navcta{border-color:#e8c982!important;background:#e8c982!important;color:#132018!important;text-shadow:none!important}
.vipramHero{position:relative;min-height:100svh!important;height:100svh!important;overflow:hidden;background:#03110c;isolation:isolate;padding:0!important;display:flex;align-items:stretch!important}
.vipramHeroBg{position:absolute;inset:0;z-index:-3;transform:scale(1.01);overflow:hidden;background:#07100d}
.vipramHeroSlide{position:absolute;inset:0;display:block;background-repeat:no-repeat;background-size:cover;opacity:0;animation:vipramHeroFade 18s infinite;will-change:opacity}
.vipramHeroSlide.slide-door{background-image:url('assets/vipram-hero-door.jpg');background-position:center 52%;animation-delay:0s}
.vipramHeroSlide.slide-plywood{background-image:url('assets/vipram-hero-plywood.jpg');background-position:center 52%;animation-delay:6s}
.vipramHeroSlide.slide-interior{background-image:url('assets/vipram-hero-interior.jpg');background-position:center 50%;animation-delay:12s}
@keyframes vipramHeroFade{0%{opacity:0}4%{opacity:1}30%{opacity:1}36%{opacity:0}100%{opacity:0}}
@media(prefers-reduced-motion:reduce){.vipramHeroSlide{animation-duration:30s}}

.vipramHeroShade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,12,8,.94) 0%,rgba(2,12,8,.78) 28%,rgba(2,12,8,.22) 58%,rgba(2,12,8,.06) 100%),linear-gradient(0deg,rgba(2,10,7,.82) 0%,transparent 35%,rgba(2,10,7,.12) 100%);z-index:-2}
.vipramHeroInner{position:relative;width:100%;min-height:100%;display:flex;align-items:center;justify-content:space-between;padding-top:105px;padding-bottom:145px;box-sizing:border-box}
.vipramHeroCopy{width:min(540px,44vw);margin-left:2px;margin-top:-25px}
.vipramHeroKicker{font-size:12px;letter-spacing:.28em;color:#dcb76c;font-weight:700;margin-bottom:24px}
.vipramHeroCopy h1{font-family:Georgia,'Times New Roman',serif;color:#f5efe1;font-weight:400;font-size:clamp(58px,6.3vw,100px);line-height:.9;letter-spacing:-.045em;margin:0 0 24px}
.vipramHeroCopy h1 em{color:#dfba72;font-style:italic}
.vipramHeroHindi{font-family:'Noto Sans Devanagari','Nirmala UI',sans-serif;color:#f6f0e2;font-size:23px;line-height:1.45;margin-bottom:20px;text-shadow:0 2px 8px rgba(0,0,0,.5)}
.vipramHeroCopy p{font-size:15px;line-height:1.65;color:rgba(245,239,225,.84);margin:0 0 30px;max-width:440px}
.vipramHeroActions{display:flex;align-items:center;gap:28px}.vipramHeroActions .btn{min-width:205px;justify-content:center}.vipramHeroActions .btn span{margin-left:20px;font-size:18px}
.vipramVideoLink{display:flex;align-items:center;gap:10px;color:#f5efe1;text-decoration:none;font-size:12px;letter-spacing:.06em}.playCircle{width:40px;height:40px;border:1px solid rgba(246,240,226,.7);border-radius:50%;display:grid;place-items:center;font-size:12px;padding-left:2px;box-sizing:border-box}
.vipramHeroTagline{margin-top:68px;font-size:11px;line-height:1.55;letter-spacing:.23em;color:#f0cd7e;font-weight:700}
.vipramHeroBrand{width:44vw;max-width:650px;min-width:420px;display:flex;align-items:center;justify-content:center;margin-right:-3vw;margin-top:90px}
.vipramWoodBrand{width:min(620px,100%);height:auto;min-height:360px;border-radius:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#f6efdf;text-align:center;position:relative;background:transparent;mix-blend-mode:normal;text-shadow:0 3px 14px rgba(0,0,0,.82),0 1px 2px rgba(0,0,0,.9);padding:28px 20px;box-sizing:border-box}
.vipramWoodBrand:before{content:"";position:absolute;inset:14% 4%;background:radial-gradient(ellipse at center,rgba(2,14,10,.24) 0%,rgba(2,14,10,.12) 38%,rgba(2,14,10,0) 72%);filter:blur(18px);z-index:-1;pointer-events:none}
.vipramWoodBrand img{width:88px;height:88px;object-fit:contain;filter:none;margin-bottom:10px;position:relative;z-index:1}
.vipramWoodBrand strong{font-family:Georgia,'Times New Roman',serif;font-size:clamp(54px,5vw,78px);letter-spacing:.025em;line-height:.9;font-weight:700;color:#f7edda;position:relative;z-index:1}
.vipramWoodBrand span{font-size:30px;letter-spacing:.34em;margin-left:.34em;font-weight:600;color:#f7edda;position:relative;z-index:1}
.vipramWoodBrand small{margin-top:22px;font-family:'Noto Sans Devanagari','Nirmala UI',sans-serif;font-size:clamp(16px,1.35vw,22px);line-height:1.35;letter-spacing:.01em;color:#f7edda;font-weight:700;position:relative;z-index:1}
.vipramHeroFeatures{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);display:grid;grid-template-columns:repeat(4,1fr);max-width:900px;border-top:1px solid rgba(238,215,166,.24);padding-top:18px;box-sizing:border-box}
.vipramHeroFeatures>div{display:flex;align-items:center;justify-content:center;gap:12px;color:#f5efe1;min-height:48px;border-right:1px solid rgba(238,215,166,.2)}.vipramHeroFeatures>div:last-child{border-right:0}.vipramHeroFeatures strong{font-size:11px;letter-spacing:.05em;font-weight:500}.featureIcon{width:29px;height:29px;border:1px solid rgba(239,211,145,.72);border-radius:50%;display:grid;place-items:center;color:#e6c67c;font-size:13px}
@media(max-width:1100px){.vipramHeroInner{padding-top:120px;padding-bottom:155px}.vipramHeroCopy{width:52vw}.vipramHeroBrand{width:42vw;min-width:300px}.vipramWoodBrand{min-height:300px;padding:20px 12px}.vipramWoodBrand img{width:72px;height:72px}.vipramWoodBrand strong{font-size:48px}.vipramWoodBrand span{font-size:23px}.vipramWoodBrand small{font-size:15px;margin-top:18px}.vipramHeroHindi{font-size:19px}.vipramHeroFeatures{max-width:760px}.vipramHeroFeatures strong{font-size:10px}}
@media(max-width:760px){body:has(.vipramHero) .nav{padding:10px 0 15px!important}.vipramHero{min-height:900px!important;height:auto!important}.vipramHeroBg{background-position:center center}.vipramHeroSlide.slide-door{background-position:58% center}.vipramHeroSlide.slide-plywood{background-position:58% center}.vipramHeroSlide.slide-interior{background-position:58% center}.vipramHeroShade{background:linear-gradient(180deg,rgba(2,12,8,.82) 0%,rgba(2,12,8,.64) 34%,rgba(2,12,8,.2) 62%,rgba(2,12,8,.84) 100%)}.vipramHeroInner{display:block;padding-top:145px;padding-bottom:175px}.vipramHeroCopy{width:auto;max-width:560px;margin:0 auto;padding:0 24px}.vipramHeroKicker{font-size:10px;letter-spacing:.2em;margin-bottom:17px}.vipramHeroCopy h1{font-size:clamp(54px,15vw,78px);line-height:.92}.vipramHeroHindi{font-size:18px}.vipramHeroCopy p{font-size:14px}.vipramHeroActions{gap:16px;flex-wrap:wrap}.vipramHeroActions .btn{min-width:190px}.vipramHeroTagline{margin-top:42px}.vipramHeroBrand{width:100%;min-width:0;margin:34px auto 0}.vipramWoodBrand{width:100%;min-height:245px;padding:18px 10px}.vipramWoodBrand img{width:58px;height:58px}.vipramWoodBrand strong{font-size:clamp(38px,12vw,54px)}.vipramWoodBrand span{font-size:20px;letter-spacing:.3em}.vipramWoodBrand small{font-size:13px;margin-top:16px}.vipramHeroFeatures{position:absolute;bottom:18px;left:18px;right:18px;transform:none;width:auto;grid-template-columns:repeat(2,1fr);padding-top:12px}.vipramHeroFeatures>div{min-height:42px;justify-content:flex-start;padding-left:10px}.vipramHeroFeatures>div:nth-child(2){border-right:0}.vipramHeroFeatures>div:nth-child(3){border-top:1px solid rgba(238,215,166,.14)}.vipramHeroFeatures>div:nth-child(4){border-top:1px solid rgba(238,215,166,.14)}.desktopOnly{display:none}}

/* V56 — Homepage hero alignment polish: keep the cinematic V55 design, but restore a clean centered content grid. */
body:has(.vipramHero) .vipramHeroInner{
  width:min(calc(100% - 96px),1600px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  min-height:100%!important;
  padding-top:155px!important;
  padding-bottom:155px!important;
  box-sizing:border-box!important;
  align-items:center!important;
}
body:has(.vipramHero) .vipramHeroCopy{
  width:min(540px,43vw)!important;
  margin-left:0!important;
  margin-top:35px!important;
}
body:has(.vipramHero) .vipramHeroBrand{
  width:min(650px,43vw)!important;
  min-width:0!important;
  margin-right:0!important;
  margin-top:75px!important;
  flex:0 1 650px!important;
}
body:has(.vipramHero) .vipramHeroFeatures{
  width:min(calc(100% - 96px),1100px)!important;
  max-width:1100px!important;
  left:50%!important;
  right:auto!important;
  bottom:30px!important;
  transform:translateX(-50%)!important;
}

@media(max-width:1100px){
  body:has(.vipramHero) .vipramHeroInner{
    width:min(calc(100% - 52px),1050px)!important;
    padding-top:140px!important;
    padding-bottom:150px!important;
  }
  body:has(.vipramHero) .vipramHeroCopy{width:52vw!important;margin-top:20px!important}
  body:has(.vipramHero) .vipramHeroBrand{width:42vw!important;margin-top:55px!important}
  body:has(.vipramHero) .vipramHeroFeatures{width:min(calc(100% - 52px),760px)!important}
}

@media(max-width:760px){
  body:has(.vipramHero) .vipramHeroInner{
    width:100%!important;
    margin:0!important;
    min-height:0!important;
    padding-top:145px!important;
    padding-bottom:175px!important;
  }
  body:has(.vipramHero) .vipramHeroCopy{
    width:auto!important;
    max-width:560px!important;
    margin:0 auto!important;
    padding:0 24px!important;
  }
  body:has(.vipramHero) .vipramHeroBrand{
    width:100%!important;
    min-width:0!important;
    margin:34px auto 0!important;
  }
  body:has(.vipramHero) .vipramHeroFeatures{
    width:auto!important;
    max-width:none!important;
    left:18px!important;
    right:18px!important;
    bottom:18px!important;
    transform:none!important;
  }
}

/* V57 — remove homepage hero scroll-gap/jump: keep the hero exactly one viewport tall. */
html,body{margin:0;padding:0;overflow-x:hidden}
body:has(.vipramHero){overflow-x:hidden}
body:has(.vipramHero) .vipramHero{
  height:100svh!important;
  min-height:100svh!important;
  max-height:100svh!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
body:has(.vipramHero) .vipramHeroInner{
  min-height:0!important;
  height:100%!important;
  box-sizing:border-box!important;
}
body:has(.vipramHero) .marquee{
  margin:0!important;
}
@media(max-width:760px){
  body:has(.vipramHero) .vipramHero{
    height:auto!important;
    min-height:900px!important;
    max-height:none!important;
  }
  body:has(.vipramHero) .vipramHeroInner{height:auto!important;min-height:0!important}
}

/* V58 — stabilize hero composition while scrolling: top-anchor the hero content to prevent the large visual void. */
body:has(.vipramHero) .vipramHeroInner{
  align-items:flex-start!important;
  padding-top:150px!important;
  padding-bottom:120px!important;
}
body:has(.vipramHero) .vipramHeroCopy{
  margin-top:35px!important;
}
body:has(.vipramHero) .vipramHeroBrand{
  margin-top:20px!important;
}
@media(max-width:1100px){
  body:has(.vipramHero) .vipramHeroInner{
    align-items:flex-start!important;
    padding-top:145px!important;
    padding-bottom:120px!important;
  }
  body:has(.vipramHero) .vipramHeroCopy{margin-top:25px!important}
  body:has(.vipramHero) .vipramHeroBrand{margin-top:20px!important}
}
@media(max-width:760px){
  body:has(.vipramHero) .vipramHeroInner{
    align-items:initial!important;
    padding-top:145px!important;
    padding-bottom:175px!important;
  }
  body:has(.vipramHero) .vipramHeroCopy{margin-top:0!important}
  body:has(.vipramHero) .vipramHeroBrand{margin-top:34px!important}
}


/* V59 — homepage header must remain part of the hero; never switch to the inner-page fixed/sticky header while scrolling. */
.heroNav{
  position:absolute!important;
  top:0!important;
  left:0!important;
  right:0!important;
  z-index:80!important;
  background:linear-gradient(180deg,rgba(3,10,7,.82) 0%,rgba(3,10,7,.32) 78%,transparent 100%)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  border:0!important;
  box-shadow:none!important;
}
.heroNav.on{position:absolute!important;background:linear-gradient(180deg,rgba(3,10,7,.82) 0%,rgba(3,10,7,.32) 78%,transparent 100%)!important;border:0!important;box-shadow:none!important}
@media(max-width:760px){.heroNav{position:absolute!important;padding:10px 0 15px!important}}



/* V65 — keep the entire lower hero visually consistent; no rectangular strip/scroll overlay. */
body:has(.vipramHero) .vipramHero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:linear-gradient(
    180deg,
    rgba(2,10,7,0) 34%,
    rgba(2,10,7,.10) 45%,
    rgba(2,10,7,.34) 60%,
    rgba(2,10,7,.68) 76%,
    rgba(2,10,7,.88) 100%
  );
}
body:has(.vipramHero) .vipramHeroFeatures{
  background:transparent!important;
  box-shadow:none!important;
  opacity:1!important;
}
body:has(.vipramHero) .vipramHeroFeatures::before{display:none!important}
body:has(.vipramHero) .vipramHeroFeatures>div,
body:has(.vipramHero) .vipramHeroFeatures strong,
body:has(.vipramHero) .vipramHeroFeatures .featureIcon{
  opacity:1!important;
}
@media(max-width:760px){
  body:has(.vipramHero) .vipramHero::after{
    background:linear-gradient(
      180deg,
      rgba(2,10,7,0) 30%,
      rgba(2,10,7,.18) 48%,
      rgba(2,10,7,.52) 70%,
      rgba(2,10,7,.88) 100%
    );
  }
}

/* V66 — remove previous campaign photography while preserving the approved campaign layout for replacement images */
.campaignPlaceholder{background:linear-gradient(145deg,#0b1714 0%,#07110e 58%,#0a1612 100%)!important;}
.campaignPlaceholder img{display:none!important;}
.campaignImageCard{position:relative;overflow:hidden;background:#07110e!important;}
.campaignImageCard img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .7s ease,filter .7s ease;}
.campaignImageCard::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,12,10,.04) 35%,rgba(4,12,10,.78) 100%);pointer-events:none;}
.campaignImageCard .campaignOverlay{z-index:2;}
.campaignImageCard:hover img{transform:scale(1.025);filter:saturate(.96) contrast(1.02);}


/* V67 — move the wood-surface brand lockup slightly upward/right and improve slogan contrast. */
body:has(.vipramHero) .vipramHeroBrand{
  transform:translate(3.5vw,-3.5vh)!important;
}
body:has(.vipramHero) .vipramWoodBrand small{
  color:#241b12!important;
  font-weight:600!important;
  text-shadow:0 1px 1px rgba(255,255,255,.16)!important;
}
@media(max-width:1100px){
  body:has(.vipramHero) .vipramHeroBrand{transform:translate(2.5vw,-2.5vh)!important}
}
@media(max-width:760px){
  body:has(.vipramHero) .vipramHeroBrand{transform:translate(3vw,-2vh)!important}
}

/* Infrastructure hero — image-led editorial layout */
.infraHero{min-height:calc(100vh - 86px);display:flex;align-items:center;overflow:hidden;background:radial-gradient(circle at 76% 34%,rgba(76,100,43,.18),transparent 34%),#04100d;padding:70px 0 85px}.infraHeroGrid{width:100%;display:grid;grid-template-columns:minmax(0,.86fr) minmax(520px,1.14fr);gap:72px;align-items:center}.infraHeroCopy{padding-left:2px;max-width:680px}.infraHeroCopy h1{font:400 clamp(72px,8.2vw,138px)/.84 Georgia,serif;letter-spacing:-.055em;margin:20px 0 34px;color:#f3efe2}.infraHeroCopy h1 em{font-style:italic;color:#d9b56a}.infraHeroLead{max-width:590px;color:#b9c1ba;font-size:17px;line-height:1.8;margin:0 0 34px}.infraHeroMeta{display:flex;flex-wrap:wrap;gap:12px 34px;padding-top:25px;border-top:1px solid rgba(217,181,106,.25);color:#d9b56a;font-size:11px;letter-spacing:.2em}.infraHeroVisual{position:relative;min-height:560px;border:1px solid rgba(217,181,106,.24);overflow:hidden;background:#07130f;box-shadow:0 30px 80px rgba(0,0,0,.28)}.infraHeroVisual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.02) 45%,rgba(2,11,8,.7) 100%);pointer-events:none}.infraHeroVisual img{width:100%;height:100%;min-height:560px;display:block;object-fit:cover;object-position:center}.infraHeroCaption{position:absolute;z-index:2;left:34px;right:34px;bottom:30px;display:grid;grid-template-columns:auto 1fr;column-gap:16px;align-items:end;color:#f3efe2}.infraHeroCaption span{grid-row:span 2;border:1px solid rgba(217,181,106,.65);padding:9px 10px;font-size:11px;letter-spacing:.18em;color:#d9b56a}.infraHeroCaption b{font-size:13px;letter-spacing:.2em;font-weight:500}.infraHeroCaption small{grid-column:2;margin-top:7px;color:#c0c8c1;font-size:11px;letter-spacing:.1em}@media(max-width:900px){.infraHero{padding:45px 0 65px}.infraHeroGrid{grid-template-columns:1fr;gap:38px}.infraHeroCopy h1{font-size:clamp(64px,14vw,100px)}.infraHeroVisual{min-height:430px}.infraHeroVisual img{min-height:430px}}@media(max-width:560px){.infraHeroCopy h1{font-size:64px}.infraHeroLead{font-size:15px}.infraHeroMeta{gap:10px 20px}.infraHeroVisual{min-height:340px}.infraHeroVisual img{min-height:340px}.infraHeroCaption{left:20px;right:20px;bottom:20px}}

/* V72 — Infrastructure hero overflow/alignment fix */
.infraHeroGrid{
  box-sizing:border-box;
  width:100%;
  max-width:1320px;
  margin-left:auto;
  margin-right:auto;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:56px;
}
.infraHeroCopy{min-width:0;overflow:hidden}
.infraHeroCopy h1{
  max-width:100%;
  font-size:clamp(64px,7.2vw,118px);
  overflow-wrap:break-word;
  word-break:normal;
}
.infraHeroLead{max-width:560px}
.infraHeroVisual{min-width:0;width:100%}
.infraHeroVisual img{max-width:none}
@media(max-width:1100px){
  .infraHeroGrid{max-width:100%;gap:42px}
  .infraHeroCopy h1{font-size:clamp(62px,8.5vw,100px)}
}
@media(max-width:900px){
  .infraHeroGrid{gap:38px}
  .infraHeroCopy{overflow:visible}
  .infraHeroCopy h1{font-size:clamp(64px,14vw,100px)}
}
@media(max-width:600px){
  .infraHeroGrid{width:100%;max-width:100%}
  .infraHeroCopy h1{font-size:64px}
}

/* Factory photography gallery — added without changing the existing page structure. */
.factoryStory{padding:110px 0 120px;background:#04100d;border-top:1px solid rgba(217,181,106,.12)}
.factoryStoryIntro{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:70px;align-items:end;margin-bottom:44px}
.factoryStoryIntro h2{font:400 clamp(52px,7vw,104px)/.88 Georgia,serif;letter-spacing:-.045em;color:#f3efe2;margin:15px 0 0;max-width:900px}
.factoryStoryIntro p{max-width:520px;color:#aeb9b1;font-size:16px;line-height:1.8;margin:0 0 7px}
.factoryGallery{display:grid;grid-template-columns:1.35fr .82fr .82fr;grid-template-rows:290px 290px 250px;gap:14px}
.factoryTile{position:relative;overflow:hidden;border:1px solid rgba(217,181,106,.18);background:#07130f;min-width:0;margin:0}
.factoryTileMain{grid-column:1 / 3;grid-row:1 / 3}
.factoryTile:nth-child(2){grid-column:3;grid-row:1}
.factoryTile:nth-child(3){grid-column:3;grid-row:2}
.factoryTile:nth-child(4){grid-column:1;grid-row:3}
.factoryTile:nth-child(5){grid-column:2 / 4;grid-row:3}
.factoryTile img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .8s cubic-bezier(.2,.65,.2,1),filter .8s ease;filter:saturate(.92) contrast(1.03)}
.factoryTileMain img{object-position:center}
.factoryTile:nth-child(2) img{object-position:center}
.factoryTile:nth-child(3) img{object-position:center}
.factoryTile:nth-child(4) img{object-position:center}
.factoryTile:nth-child(5) img{object-position:center}
.factoryTile:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,10,7,0) 42%,rgba(2,10,7,.86) 100%);pointer-events:none}
.factoryTile:hover img{transform:scale(1.035);filter:saturate(1) contrast(1.05)}
.factoryTile figcaption{position:absolute;z-index:2;left:22px;right:22px;bottom:20px;display:flex;gap:12px;align-items:flex-end;color:#f3efe2}
.factoryTile figcaption span{border:1px solid rgba(217,181,106,.65);padding:7px 9px;color:#d9b56a;font-size:10px;letter-spacing:.18em;line-height:1}
.factoryTile figcaption div{display:flex;flex-direction:column;gap:5px}
.factoryTile figcaption b{font-size:11px;letter-spacing:.19em;font-weight:500}
.factoryTile figcaption small{font-size:10px;letter-spacing:.08em;color:#b9c2bc}
@media(max-width:900px){.factoryStory{padding:85px 0 90px}.factoryStoryIntro{grid-template-columns:1fr;gap:24px}.factoryStoryIntro h2{font-size:clamp(54px,11vw,86px)}.factoryGallery{grid-template-columns:1fr 1fr;grid-template-rows:330px 250px 250px 250px}.factoryTileMain{grid-column:1 / 3;grid-row:1}.factoryTile:nth-child(2){grid-column:1;grid-row:2}.factoryTile:nth-child(3){grid-column:2;grid-row:2}.factoryTile:nth-child(4){grid-column:1 / 3;grid-row:3}.factoryTile:nth-child(5){grid-column:1 / 3;grid-row:4}}
@media(max-width:560px){.factoryStory{padding:70px 0 75px}.factoryStoryIntro h2{font-size:56px}.factoryGallery{display:grid;grid-template-columns:1fr;grid-template-rows:360px 270px 270px 270px 270px;gap:12px}.factoryTileMain,.factoryTile:nth-child(2),.factoryTile:nth-child(3),.factoryTile:nth-child(4),.factoryTile:nth-child(5){grid-column:1;grid-row:auto}.factoryTile figcaption{left:16px;right:16px;bottom:16px}.factoryTile figcaption b{font-size:10px}}

/* Doors homepage card — clean single-product composition */
.productMulti{align-items:center;padding:52px;min-height:490px;background:#071711;}
.productMulti:after{display:none;}
.productMulti .photoMain{z-index:0;inset:26px 26px 26px auto;width:43%;height:calc(100% - 52px);background-size:contain;background-repeat:no-repeat;background-position:center;transform:none!important;}
.productMulti .productCardCopy{position:relative;z-index:2;width:48%;padding:20px 0;}
.productMulti .productCardCopy h3{font-size:52px;margin:12px 0 18px;}
.productMulti .productCardCopy p{max-width:520px;font-size:14px;line-height:1.8;color:#bfc9c4;}
.productMulti:hover .photoMain{transform:scale(1.02)!important;}
@media(max-width:1100px){.productMulti{padding:38px;min-height:450px}.productMulti .photoMain{width:45%;inset:22px 22px 22px auto;height:calc(100% - 44px)}.productMulti .productCardCopy{width:50%}}
@media(max-width:600px){.productMulti{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:24px;min-height:500px}.productMulti .photoMain{inset:22px 18px auto 18px;width:calc(100% - 36px);height:58%;background-size:contain}.productMulti .productCardCopy{width:100%;padding-top:280px}.productMulti .productCardCopy h3{font-size:42px}}

/* V79 — improve homepage hero navigation visibility over the photographic background */
body:has(.heroSponsorship) .nav{
  background:linear-gradient(180deg,rgba(3,10,8,.94) 0%,rgba(3,10,8,.84) 78%,rgba(3,10,8,.58) 100%)!important;
  backdrop-filter:blur(12px)!important;
  -webkit-backdrop-filter:blur(12px)!important;
  box-shadow:0 8px 28px rgba(0,0,0,.28)!important;
}
body:has(.heroSponsorship) .navlinks,
body:has(.heroSponsorship) .navlinks a,
body:has(.heroSponsorship) .navDropBtn{
  color:#fff8e9!important;
  text-shadow:0 1px 3px rgba(0,0,0,.95),0 0 10px rgba(0,0,0,.72)!important;
}
body:has(.heroSponsorship) .navlinks a:hover,
body:has(.heroSponsorship) .navDropBtn:hover{color:#d4df5d!important}
body:has(.heroSponsorship) .navcta{
  color:#fff8e9!important;
  border-color:rgba(255,248,233,.86)!important;
  background:rgba(5,14,12,.34)!important;
  text-shadow:0 1px 3px rgba(0,0,0,.95),0 0 8px rgba(0,0,0,.72)!important;
}
body:has(.heroSponsorship) .navcta:hover{color:#d4df5d!important;border-color:#d4df5d!important;background:rgba(5,14,12,.52)!important}

/* V80 — larger, bolder homepage navigation for clear readability */
body:has(.heroSponsorship) .navlinks{
  gap:30px!important;
  font-size:13px!important;
  font-weight:700!important;
  letter-spacing:.16em!important;
}
body:has(.heroSponsorship) .navlinks a,
body:has(.heroSponsorship) .navDropBtn{
  font-size:13px!important;
  font-weight:700!important;
  letter-spacing:.16em!important;
  color:#f8f4e9!important;
  -webkit-text-stroke:.25px rgba(0,0,0,.7)!important;
  text-shadow:0 2px 5px rgba(0,0,0,.95),0 0 10px rgba(0,0,0,.7)!important;
}
body:has(.heroSponsorship) .navcta{
  font-size:13px!important;
  font-weight:700!important;
  letter-spacing:.16em!important;
  padding:13px 18px!important;
  color:#f8f4e9!important;
  text-shadow:0 2px 5px rgba(0,0,0,.95)!important;
}
body:has(.heroSponsorship) .navDropBtn span{font-size:14px!important;font-weight:700!important}

/* V81 — stronger homepage navigation presence */
body:has(.heroSponsorship) .nav{
  min-height:92px!important;
  background:linear-gradient(180deg,rgba(2,9,7,.97) 0%,rgba(2,9,7,.90) 72%,rgba(2,9,7,.76) 100%)!important;
  box-shadow:0 10px 34px rgba(0,0,0,.38)!important;
}
body:has(.heroSponsorship) .navrow{min-height:92px!important}
body:has(.heroSponsorship) .navlinks{
  gap:34px!important;
  font-size:15px!important;
  font-weight:800!important;
  letter-spacing:.13em!important;
}
body:has(.heroSponsorship) .navlinks a,
body:has(.heroSponsorship) .navDropBtn{
  font-size:15px!important;
  font-weight:800!important;
  letter-spacing:.13em!important;
  color:#fffaf0!important;
  -webkit-text-stroke:.4px rgba(0,0,0,.75)!important;
  text-shadow:0 2px 4px rgba(0,0,0,1),0 0 12px rgba(0,0,0,.9)!important;
}
body:has(.heroSponsorship) .navDropBtn span{font-size:16px!important;font-weight:800!important;margin-left:7px!important}
body:has(.heroSponsorship) .navcta{
  font-size:15px!important;
  font-weight:800!important;
  letter-spacing:.13em!important;
  padding:16px 23px!important;
  border-width:1px!important;
  color:#172018!important;
  background:#e8c982!important;
  border-color:#e8c982!important;
  text-shadow:none!important;
}
@media(max-width:1100px){body:has(.heroSponsorship) .nav{min-height:76px!important}body:has(.heroSponsorship) .navrow{min-height:76px!important}}

/* V82 — homepage uses .vipramHero (not .heroSponsorship); make navigation visibly larger/bolder */
body:has(.vipramHero) .nav{
  min-height:82px!important;
  padding:12px 0!important;
  background:linear-gradient(180deg,rgba(2,9,7,.97) 0%,rgba(2,9,7,.91) 72%,rgba(2,9,7,.78) 100%)!important;
  backdrop-filter:blur(12px)!important;
  -webkit-backdrop-filter:blur(12px)!important;
  box-shadow:0 10px 34px rgba(0,0,0,.42)!important;
}
body:has(.vipramHero) .navrow{min-height:54px!important}
body:has(.vipramHero) .navlinks{
  gap:31px!important;
  font-size:14.5px!important;
  font-weight:800!important;
  letter-spacing:.12em!important;
}
body:has(.vipramHero) .navlinks a,
body:has(.vipramHero) .navDropBtn{
  font-size:14.5px!important;
  font-weight:700!important;
  letter-spacing:.12em!important;
  color:#fffaf0!important;
  -webkit-text-stroke:.45px rgba(0,0,0,.8)!important;
  text-shadow:0 2px 5px rgba(0,0,0,1),0 0 14px rgba(0,0,0,.92)!important;
}
body:has(.vipramHero) .navDropBtn span{
  font-size:16px!important;
  font-weight:800!important;
  margin-left:7px!important;
}
body:has(.vipramHero) .navcta{
  font-size:14.5px!important;
  font-weight:700!important;
  letter-spacing:.12em!important;
  padding:13px 23px!important;
  color:#172018!important;
  background:#e8c982!important;
  border:1px solid #e8c982!important;
  text-shadow:none!important;
}
body:has(.vipramHero) .navlinks a:hover,
body:has(.vipramHero) .navDropBtn:hover{color:#d4df5d!important}
body:has(.vipramHero) .navcta:hover{background:#f0d697!important;color:#132018!important}
@media(max-width:1100px){body:has(.vipramHero) .nav{min-height:76px!important;padding:10px 0 15px!important}body:has(.vipramHero) .navrow{min-height:51px!important}}

/* V84 — apply the approved medium navigation sizing consistently across all pages */
body:not(:has(.vipramHero)) .navlinks{
  gap:31px!important;
  font-size:14.5px!important;
  font-weight:800!important;
  letter-spacing:.12em!important;
}
body:not(:has(.vipramHero)) .navlinks a,
body:not(:has(.vipramHero)) .navDropBtn{
  font-size:14.5px!important;
  font-weight:700!important;
  letter-spacing:.12em!important;
}
body:not(:has(.vipramHero)) .navDropBtn span{
  font-size:16px!important;
  font-weight:800!important;
  margin-left:7px!important;
}
body:not(:has(.vipramHero)) .navcta{
  font-size:14.5px!important;
  font-weight:700!important;
  letter-spacing:.12em!important;
  padding:13px 23px!important;
}

/* ABOUT US — editorial brand story */
.aboutHero h1{max-width:900px}.aboutHero h1 em{font-style:normal;color:#a8c86b}.bodyCopy{font-size:1.02rem;line-height:1.9;color:inherit;opacity:.84;margin:1.15rem 0 0}.aboutManifesto{background:#171c16;color:#f4f2e9;padding:clamp(80px,10vw,150px) 0;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}.aboutManifestoGrid{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(40px,8vw,120px);align-items:end}.aboutManifesto h2,.aboutCommit h2{font-family:Georgia,serif;font-weight:500;font-size:clamp(2.5rem,5vw,5.6rem);line-height:.98;letter-spacing:-.045em;margin:18px 0}.aboutManifesto h2 em,.aboutCommit h2 em{font-style:italic;color:#a8c86b}.aboutManifesto p{font-size:1.15rem;line-height:1.9;opacity:.8}.aboutManufacturer{display:flex;flex-direction:column;gap:5px;margin-top:34px;padding-top:22px;border-top:1px solid rgba(255,255,255,.14)}.aboutManufacturer span,.aboutManufacturer small{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;opacity:.55}.aboutManufacturer strong{font-size:1.2rem;letter-spacing:.08em}.aboutValues{background:#f0eee5;color:#12201c;padding:clamp(80px,10vw,150px) 0}.sectionHead{display:grid;grid-template-columns:1fr .55fr;gap:60px;align-items:end;margin-bottom:55px}.sectionHead h2{font-family:Georgia,serif;font-size:clamp(2.7rem,5vw,5.5rem);font-weight:500;line-height:.98;letter-spacing:-.045em;margin:14px 0}.sectionHead h2 em{font-style:italic}.sectionHead>p{line-height:1.8;opacity:.68}.aboutValueGrid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(20,30,20,.2)}.aboutValue{padding:30px 24px 20px;border-right:1px solid rgba(20,30,20,.15);min-height:280px}.aboutValue:first-child{border-left:1px solid rgba(20,30,20,.15)}.aboutValue span{font-size:.7rem;letter-spacing:.16em;opacity:.5}.aboutValue h3{font-family:Georgia,serif;font-size:2rem;font-weight:500;margin:58px 0 16px}.aboutValue p{line-height:1.75;opacity:.67}.aboutFactory{background:#10140f;color:#f4f2e9;padding:clamp(80px,10vw,150px) 0}.aboutFactoryGrid{display:grid;grid-template-columns:1.35fr .65fr;grid-template-rows:repeat(2,minmax(230px,1fr));gap:18px}.aboutFactory figure{position:relative;margin:0;overflow:hidden;background:#1b2119;min-height:280px}.aboutFactoryMain{grid-row:span 2}.aboutFactory img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s ease}.aboutFactory figure:hover img{transform:scale(1.035)}.aboutFactory figcaption{position:absolute;left:0;right:0;bottom:0;padding:55px 25px 22px;background:linear-gradient(transparent,rgba(0,0,0,.8));display:flex;flex-direction:column;gap:5px}.aboutFactory figcaption b{letter-spacing:.08em}.aboutFactory figcaption small{opacity:.65}.aboutApplications{padding-top:clamp(80px,10vw,140px);padding-bottom:clamp(80px,10vw,140px)}.aboutWideLead{max-width:760px;margin-top:28px}.aboutApplicationRail{display:flex;flex-wrap:wrap;gap:10px;margin-top:50px}.aboutApplicationRail span{border:1px solid rgba(20,30,20,.2);padding:13px 17px;font-size:.78rem;letter-spacing:.04em}.aboutCommit{background:#20261d;color:#f4f2e9;padding:clamp(80px,10vw,150px) 0}.aboutCommit h2{font-size:clamp(2.5rem,4.7vw,5rem)}.aboutCommit p{line-height:1.85;opacity:.78}.aboutVision{padding-top:clamp(90px,11vw,150px);padding-bottom:clamp(90px,11vw,150px)}.aboutClosing{background:#0c100c;color:#f4f2e9;padding:clamp(100px,13vw,190px) 0;text-align:center}.aboutClosing h2{font-family:Georgia,serif;font-weight:500;font-size:clamp(4rem,10vw,10rem);line-height:.82;letter-spacing:-.06em;margin:20px 0 45px}.aboutClosing h2 em{color:#a8c86b;font-style:italic}.aboutClosing p{font-size:.72rem;letter-spacing:.18em;opacity:.5}.aboutIntro .bodyCopy{color:#1e281e}.aboutRoots .bodyCopy{color:#f4f2e9}.aboutRoots .display em{font-style:italic;color:#a8c86b}@media(max-width:900px){.aboutManifestoGrid,.sectionHead{grid-template-columns:1fr}.aboutValueGrid{grid-template-columns:1fr 1fr}.aboutValue{border-bottom:1px solid rgba(20,30,20,.15)}.aboutFactoryGrid{grid-template-columns:1fr;grid-template-rows:auto}.aboutFactoryMain{grid-row:auto;min-height:360px}.aboutFactoryTile{min-height:280px}.aboutClosing h2{font-size:clamp(3.5rem,15vw,7rem)}}@media(max-width:600px){.aboutValueGrid{grid-template-columns:1fr}.aboutValue{border-left:1px solid rgba(20,30,20,.15)!important}.aboutFactoryMain{min-height:300px}.aboutFactoryTile{min-height:240px}.aboutApplicationRail span{font-size:.72rem;padding:11px 13px}}

/* V86 — keep multi-word navigation labels on one line */
.navlinks a,
.navDropBtn{white-space:nowrap;}

/* V87 — use the available desktop header width so Enquire stays inside the viewport */
@media(min-width:1101px){
  .navrow{
    width:calc(100% - 52px)!important;
    max-width:none!important;
    gap:18px!important;
  }
  .navlinks{
    flex:1 1 auto!important;
    min-width:0!important;
    justify-content:space-between!important;
    gap:18px!important;
  }
}
@media(min-width:1101px) and (max-width:1500px){
  .logo{width:340px!important}
  .navlinks{gap:14px!important}
  .navlinks a,.navDropBtn{font-size:13px!important;letter-spacing:.10em!important}
  .navcta{font-size:13px!important;padding:12px 18px!important}
}

/* V88 — slightly reduce navbar label/button size for a cleaner, lighter header */
@media(min-width:1101px){
  body:not(:has(.vipramHero)) .navlinks a,
  body:not(:has(.vipramHero)) .navDropBtn{
    font-size:13.5px!important;
    letter-spacing:.11em!important;
  }
  body:not(:has(.vipramHero)) .navDropBtn span{
    font-size:14px!important;
    margin-left:6px!important;
  }
  body:not(:has(.vipramHero)) .navcta{
    font-size:13.5px!important;
    letter-spacing:.11em!important;
    padding:12px 20px!important;
  }
}

/* Media page — compact premium brand video */
.mediaVideoBlock{width:min(100%,1080px);margin:56px auto 0;border:1px solid var(--line);background:#0b1512;overflow:hidden}
.mediaVideoGallery{display:grid;grid-template-columns:1.35fr .825fr .825fr;gap:14px;margin-top:56px}
.mediaVideoCard{position:relative;overflow:hidden;border:1px solid rgba(20,30,20,.14);background:#0b1512;min-width:0}
.mediaVideoCardFeatured{grid-row:span 1}
.mediaVideoCard .mediaVideo{display:block;width:100%;height:100%;min-height:420px;aspect-ratio:9 / 16;object-fit:cover;background:#08110f}
.mediaVideoCardFeatured .mediaVideo{aspect-ratio:16 / 9;min-height:100%;object-fit:cover}
.mediaVideoCaption{position:absolute;z-index:2;left:20px;right:20px;bottom:18px;display:flex;flex-direction:column;gap:5px;color:#f3f1e8;pointer-events:none;text-shadow:0 2px 18px rgba(0,0,0,.7)}
.mediaVideoCaption:before{content:"";position:absolute;inset:-90px -20px -18px;background:linear-gradient(transparent,rgba(0,0,0,.78));z-index:-1}
.mediaVideoCaption span{font-size:8px;letter-spacing:.22em;text-transform:uppercase;color:#c8dc72}
.mediaVideoCaption strong{font:400 clamp(20px,2vw,32px)/1 Georgia,serif}
@media(max-width:900px){.mediaVideoGallery{grid-template-columns:1fr 1fr}.mediaVideoCardFeatured{grid-column:1 / 3}.mediaVideoCard .mediaVideo{min-height:360px}}
@media(max-width:700px){.mediaVideoBlock{margin-top:36px}.mediaVideoGallery{grid-template-columns:1fr;margin-top:36px;gap:12px}.mediaVideoCardFeatured{grid-column:auto}.mediaVideoCard .mediaVideo,.mediaVideoCardFeatured .mediaVideo{aspect-ratio:9 / 16;min-height:520px;object-fit:cover}}


/* Slogan size adjustment only — based on V102. */
body:has(.vipramHero) .vipramWoodBrand small{font-size:17px!important;}
@media(max-width:1100px){body:has(.vipramHero) .vipramWoodBrand small{font-size:15px!important;}}
@media(max-width:760px){body:has(.vipramHero) .vipramWoodBrand small{font-size:13px!important;}}

/* V104 — final homepage brand slogan visibility polish */
body:has(.vipramHero) .vipramWoodBrand small{
  font-size:clamp(20px,1.65vw,26px)!important;
  color:#f7edda!important;
  font-weight:700!important;
  letter-spacing:.015em!important;
  line-height:1.4!important;
  text-shadow:0 3px 10px rgba(0,0,0,.82),0 1px 2px rgba(0,0,0,.95)!important;
}
@media(max-width:1100px){
  body:has(.vipramHero) .vipramWoodBrand small{font-size:19px!important;}
}
@media(max-width:760px){
  body:has(.vipramHero) .vipramWoodBrand small{font-size:16px!important;line-height:1.45!important;}
}

.campaignVideoCard{position:relative;overflow:hidden}

/* V110 — Home Brand & Media video cards are clean, full-card links to Media & Gallery. */
.campaignVideoCard{cursor:pointer;color:inherit;text-decoration:none;}
.campaignVideoCard .campaignVideo{pointer-events:none;}
.campaignVideoCard:hover .campaignVideo{transform:scale(1.02);}


/* Media page: generous, separated editorial layouts for brand imagery and films */
.mediaBrandFeature{padding-top:clamp(76px,8vw,120px);padding-bottom:clamp(76px,8vw,120px)}
.mediaFeatureGrid{display:grid;grid-template-columns:.78fr 1.22fr;gap:clamp(32px,6vw,88px);align-items:center}
.mediaFeatureCopy{max-width:520px;padding:12px 0}
.mediaFeatureCopy .display{margin:18px 0 24px}
.mediaFeatureCopy .display em,.mediaSpacesSection .display em{font-style:italic;color:#d9b56a}
.mediaFeatureCopy .lead{max-width:440px;line-height:1.85}
.mediaFeatureMeta{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:34px;padding-top:18px;border-top:1px solid rgba(217,181,106,.28);color:#d9b56a;font-size:10px;letter-spacing:.16em;text-transform:uppercase}
.mediaFeatureImage{position:relative;margin:0;min-height:480px;overflow:hidden;background:#0b1512;border:1px solid rgba(217,181,106,.25)}
.mediaFeatureImage img{display:block;width:100%;height:100%;min-height:480px;object-fit:cover;object-position:center;transition:transform .8s ease}
.mediaFeatureImage:hover img{transform:scale(1.02)}
.mediaFeatureImage:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(3,10,8,.78));pointer-events:none}
.mediaFeatureImage figcaption{position:absolute;z-index:1;left:26px;right:26px;bottom:24px;display:flex;align-items:end;gap:16px;color:#f3f1e8}
.mediaFeatureImage figcaption span{border:1px solid rgba(217,181,106,.8);padding:8px 10px;color:#d9b56a;font-size:10px;letter-spacing:.14em}
.mediaFeatureImage figcaption strong{font:400 clamp(22px,2.5vw,36px)/1.1 Georgia,serif}
.mediaSpacesSection{padding-top:clamp(76px,8vw,120px);padding-bottom:clamp(80px,9vw,130px)}
.mediaSpacesSection .sectionHead{margin-bottom:48px}
.mediaSpacesGrid{display:grid;grid-template-columns:1.2fr 1fr 1fr;grid-template-rows:250px 250px;gap:16px}
.mediaSpaceTile{position:relative;display:block;min-width:0;min-height:0;overflow:hidden;background-size:cover;background-position:center;text-decoration:none;background-color:#d8d3c6}
.mediaSpaceTile:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(8,15,12,.72));transition:opacity .3s ease}
.mediaSpaceTile span{position:absolute;z-index:1;left:20px;right:16px;bottom:18px;color:#fff;font-size:10px;letter-spacing:.16em;text-transform:uppercase;line-height:1.5}
.mediaSpaceTile:hover{background-size:cover}
.mediaSpaceTile:hover:after{opacity:.82}
.mediaSpaceTileLarge{grid-row:span 2}
@media(max-width:900px){.mediaFeatureGrid{grid-template-columns:1fr;gap:34px}.mediaFeatureCopy{max-width:680px}.mediaFeatureImage,.mediaFeatureImage img{min-height:420px}.mediaSpacesGrid{grid-template-columns:1fr 1fr;grid-template-rows:300px 220px 220px}.mediaSpaceTileLarge{grid-column:1 / 3;grid-row:auto}}
@media(max-width:600px){.mediaBrandFeature,.mediaSpacesSection{padding-top:68px;padding-bottom:72px}.mediaFeatureImage,.mediaFeatureImage img{min-height:360px}.mediaFeatureImage figcaption{left:16px;right:16px;bottom:16px}.mediaSpacesSection .sectionHead{grid-template-columns:1fr;gap:18px;margin-bottom:30px}.mediaSpacesGrid{grid-template-columns:1fr;grid-template-rows:300px 240px 240px 240px;gap:12px}.mediaSpaceTileLarge{grid-column:auto;grid-row:auto}.mediaVideoGallery{margin-top:34px}}

/* V113 — Keep the landscape brand film in its own wide row; portrait films remain vertical. */
.mediaVideoGallery{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
.mediaVideoCardFeatured{grid-column:1 / -1;grid-row:auto}
.mediaVideoCard .mediaVideo{width:100%;height:auto;min-height:0;aspect-ratio:9 / 16;object-fit:contain}
.mediaVideoCardFeatured .mediaVideo{width:100%;height:auto;min-height:0;aspect-ratio:16 / 9;object-fit:contain}
@media(max-width:900px){.mediaVideoGallery{grid-template-columns:repeat(2,minmax(0,1fr))}.mediaVideoCardFeatured{grid-column:1 / -1}.mediaVideoCard .mediaVideo{min-height:0}}
@media(max-width:700px){.mediaVideoGallery{grid-template-columns:1fr}.mediaVideoCardFeatured{grid-column:auto}.mediaVideoCard .mediaVideo{aspect-ratio:9 / 16;min-height:0;object-fit:contain}.mediaVideoCardFeatured .mediaVideo{aspect-ratio:16 / 9;min-height:0;object-fit:contain}}


/* V118 — Rotate only the third source video left and display its card in compact landscape. */
.mediaVideoCardLandscape{grid-column:1 / -1;width:min(100%,760px);justify-self:center}
.mediaVideoCardLandscape .mediaVideo{display:block;width:100%;height:auto;min-height:0;aspect-ratio:16 / 9;object-fit:contain;background:#08110f}
@media(max-width:700px){.mediaVideoCardLandscape{grid-column:1 / -1;width:100%}.mediaVideoCardLandscape .mediaVideo{aspect-ratio:16 / 9;min-height:0;object-fit:contain}}


/* V119 — add supplied Brand & Media promotion photo in a balanced third stack card */
.campaignStack{grid-template-rows:1fr 1fr 1fr}
.campaignFeaturePhoto{min-height:0}
.campaignFeaturePhoto img{object-position:center 35%}
.campaignFeaturePhoto .campaignOverlay{left:20px;right:20px;bottom:18px}
.campaignFeaturePhoto .campaignOverlay strong{font-size:clamp(19px,1.55vw,27px);line-height:1.02}
.campaignFeaturePhoto .campaignOverlay span{font-size:8px;margin-bottom:7px}
.campaignFeaturePhoto .campaignOverlay small{margin-top:8px;font-size:8px}
@media(max-width:950px){.campaignStack{grid-template-rows:repeat(3,minmax(250px,1fr));min-height:0}}
@media(max-width:600px){.campaignStack{grid-template-rows:repeat(3,minmax(270px,auto));min-height:0}.campaignFeaturePhoto{min-height:270px}.campaignFeaturePhoto .campaignOverlay strong{font-size:25px}}

/* V120: balanced paired Brand Promotion images on the Media page */
.mediaFeaturePhotos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,1.8vw,24px);align-items:stretch;min-width:0}
.mediaFeaturePhotos .mediaFeatureImage{min-width:0;min-height:0;aspect-ratio:3/4}
.mediaFeaturePhotos .mediaFeatureImage img{min-height:0;height:100%;object-fit:cover;object-position:center}
.mediaFeaturePhotos .mediaFeatureImage figcaption{left:14px;right:14px;bottom:14px;gap:8px}
.mediaFeaturePhotos .mediaFeatureImage figcaption span{padding:6px 7px;font-size:9px}
.mediaFeaturePhotos .mediaFeatureImage figcaption strong{font-size:clamp(15px,1.45vw,22px)}
@media(max-width:900px){.mediaFeaturePhotos{max-width:760px}.mediaFeaturePhotos .mediaFeatureImage{aspect-ratio:4/5}}
@media(max-width:600px){.mediaFeaturePhotos{gap:10px}.mediaFeaturePhotos .mediaFeatureImage{aspect-ratio:3/4}.mediaFeaturePhotos .mediaFeatureImage figcaption{left:9px;right:9px;bottom:10px;gap:6px}.mediaFeaturePhotos .mediaFeatureImage figcaption strong{font-size:15px}.mediaFeaturePhotos .mediaFeatureImage figcaption span{padding:5px 6px}}


/* V121: compact developer credit in the existing footer */
.footerCredits{display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-width:0;}
.developerCredit{display:flex;align-items:center;flex-wrap:wrap;gap:9px;letter-spacing:.02em;font-size:11px;line-height:1.4;color:#aebbb3;}
.developerName{color:#e6d7a8;font-weight:600;letter-spacing:.02em;}
.creditDivider{color:rgba(216,223,217,.55);margin:0 2px;}
.developerContact{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border:1px solid rgba(114,214,154,.4);border-radius:999px;color:#72d69a;text-decoration:none;letter-spacing:.01em;white-space:nowrap;transition:background .2s,border-color .2s,color .2s;}
.developerContact svg{width:17px;height:17px;display:block;flex:0 0 auto;}
.developerContact:hover{background:rgba(114,214,154,.09);border-color:#72d69a;color:#8be7ae;}
@media(max-width:700px){.footerCredits{gap:8px}.developerCredit{gap:7px;font-size:10px}.developerContact{padding:6px 10px}.footerRow{gap:18px}}

/* V137 — high-contrast mobile menu button, visible on every page */
@media(max-width:1100px){
  .navrow .hamb{
    display:grid!important;
    place-items:center!important;
    flex:0 0 52px!important;
    width:52px!important;
    height:52px!important;
    padding:0!important;
    position:relative!important;
    z-index:60!important;
    color:#07110f!important;
    background:#cbd75f!important;
    border:2px solid #e7eaa5!important;
    box-shadow:0 0 0 3px rgba(7,17,15,.82),0 5px 18px rgba(0,0,0,.35)!important;
    border-radius:50%!important;
    font-size:27px!important;
    font-weight:800!important;
    line-height:1!important;
    opacity:1!important;
    visibility:visible!important;
    -webkit-appearance:none!important;
    appearance:none!important;
  }
  .navrow .hamb:focus-visible{outline:3px solid #f4ecd9!important;outline-offset:4px!important}
}

/* V146 — Gentle, deliberately slow homepage brand entrance.
   Keep the effect smooth and easy to notice; only animate the hero brand lockup. */
@keyframes vipramBrandReveal3D {
  0% {
    opacity: 0;
    transform: translate3d(0, 8px, 0) scale(.48);
  }
  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
  }
}
@keyframes vipramBrandChildSettle {
  0% { opacity: 0; transform: translate3d(0, 7px, 0); }
  100% { opacity: 1; transform: translate3d(0, 0, 0); }
}
body:has(.vipramHero) .vipramWoodBrand {
  transform-origin: center center;
  animation: vipramBrandReveal3D 5.2s cubic-bezier(.42, 0, .25, 1) both;
  will-change: transform, opacity;
}
body:has(.vipramHero) .vipramWoodBrand img {
  animation: vipramBrandChildSettle 1.6s ease-out .35s both;
}
body:has(.vipramHero) .vipramWoodBrand strong {
  animation: vipramBrandChildSettle 1.8s ease-out .75s both;
}
body:has(.vipramHero) .vipramWoodBrand span {
  animation: vipramBrandChildSettle 1.8s ease-out 1.05s both;
}
body:has(.vipramHero) .vipramWoodBrand small {
  animation: vipramBrandChildSettle 1.8s ease-out 1.35s both;
}
@media (prefers-reduced-motion: reduce) {
  body:has(.vipramHero) .vipramWoodBrand,
  body:has(.vipramHero) .vipramWoodBrand img,
  body:has(.vipramHero) .vipramWoodBrand strong,
  body:has(.vipramHero) .vipramWoodBrand span,
  body:has(.vipramHero) .vipramWoodBrand small {
    animation: none !important;
    transform: none !important;
    filter: none !important;
    opacity: 1 !important;
  }
}


/* Homepage brochure download band — added without changing existing sections */

/* Compact, visible brochure download button in the main navigation */
.brochureNavBtn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 14px;background:#d4df5d;color:#07382d!important;border:1px solid #d4df5d;text-shadow:none!important;font-size:10px;font-weight:700;letter-spacing:.12em;white-space:nowrap;opacity:1!important;transition:background .2s ease,color .2s ease,transform .2s ease}
.brochureNavBtn:hover{background:#f4ecd9;color:#07382d!important;transform:translateY(-1px)}
@media(max-width:1100px){.navlinks.mobileOpen .brochureNavBtn{display:flex;justify-content:center;margin:8px 6px;padding:14px}}
