/* ═══ SWT Expert Empire · Main Stylesheet ═══ */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{background:#f5f0e8;color:#1a1510;font-family:'Barlow',sans-serif;font-size:16px;line-height:1.65;overflow-x:hidden;}
img{display:block;max-width:100%;}
a{text-decoration:none;}
:root{
  --gold:#a8851e;--gold-mid:#c9a84c;--gold-light:#e8c96e;--gold-pale:#f5e8c0;--gold-bg:#fdf6e3;
  --white:#ffffff;--cream:#f5f0e8;--cream2:#ede7d8;--cream3:#e4dccb;
  --ink:#1a1510;--ink2:#4a3f2e;--ink3:#8a7a60;
  --dark-grey:#151515;
  --b1:rgba(140,110,50,0.18);--b2:rgba(140,110,50,0.32);--b3:rgba(140,110,50,0.52);
  --ph:20px;--pw:48px;
}
/* ── Topbar ── */
.topbar{background:var(--ink);padding:8px var(--ph);display:flex;flex-direction:column;gap:3px;align-items:center;text-align:center;font-family:'Barlow Condensed',sans-serif;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--gold-mid);}
.topbar a{color:var(--gold-mid);}
/* ── Mobile nav ── */
nav{position:sticky;top:0;z-index:600;background:rgba(255,255,255,.97);backdrop-filter:blur(14px);border-bottom:1px solid var(--b2);box-shadow:0 1px 20px rgba(26,21,16,.08);}
.nav-bar{display:flex;align-items:center;justify-content:space-between;padding:0 var(--ph);height:62px;}
.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;cursor:pointer;}
.nav-logo-img{width:42px;height:42px;flex-shrink:0;border:1.5px solid var(--gold-mid);background:var(--dark-grey);overflow:hidden;display:flex;align-items:center;justify-content:center;}
.nav-logo-img img{width:100%;height:100%;object-fit:contain;}
.logo-ph{font-family:'Barlow Condensed',sans-serif;font-size:10px;font-weight:700;color:var(--gold);text-align:center;padding:2px;}
.nav-brand{font-family:'Barlow Condensed',sans-serif;font-size:16px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;color:var(--ink);line-height:1;}
.nav-brand span{color:var(--gold);}
.nav-sub{font-size:9px;letter-spacing:.12em;color:var(--ink3);text-transform:uppercase;}
.ham{display:flex;flex-direction:column;gap:5px;cursor:pointer;padding:6px;background:none;border:none;}
.ham span{display:block;width:24px;height:1.5px;background:var(--ink);transition:all .3s;}
.ham.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
.ham.open span:nth-child(2){opacity:0;}
.ham.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}
.drawer{max-height:0;overflow:hidden;transition:max-height .35s ease;background:var(--white);}
.drawer.open{max-height:500px;border-top:1px solid var(--b2);}
.drawer a{display:block;padding:13px var(--ph);font-family:'Barlow Condensed',sans-serif;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink2);border-bottom:1px solid var(--b1);transition:color .2s,background .2s;}
.drawer a:hover,.drawer a.act{color:var(--gold);background:var(--gold-bg);}
.drawer .d-cta{margin:12px var(--ph);display:block;font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:13px;background:var(--ink);color:var(--gold-mid);text-align:center;}
/* ── Desktop nav ── */
.nav-d{display:none;position:sticky;top:0;z-index:600;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--b2);box-shadow:0 1px 20px rgba(26,21,16,.08);align-items:center;justify-content:space-between;padding:0 var(--pw);height:70px;}
.nav-d .nav-logo{display:flex;align-items:center;gap:12px;text-decoration:none;cursor:pointer;}
.nav-d .nav-logo:hover .nav-brand{color:var(--gold);}
.nav-d .nav-logo:hover .nav-brand span{color:var(--gold-light);}
.nav-d .nav-logo-img{width:46px;height:46px;border:1.5px solid var(--gold-mid);background:var(--dark-grey);overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.nav-d .nav-logo-img img{width:100%;height:100%;object-fit:contain;}
.nav-d .nav-brand{font-family:'Barlow Condensed',sans-serif;font-size:18px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;color:var(--ink);line-height:1;}
.nav-d .nav-brand span{color:var(--gold);}
.nav-d .nav-sub{font-size:9px;letter-spacing:.12em;color:var(--ink3);text-transform:uppercase;}
.nav-d .links{display:flex;gap:22px;}
.nav-d .links a{font-family:'Barlow Condensed',sans-serif;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink2);transition:color .2s;}
.nav-d .links a:hover,.nav-d .links a.act{color:var(--gold);}
.nav-d .qbtn{font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:10px 22px;background:var(--ink);color:var(--gold-mid);border:none;cursor:pointer;transition:background .2s;}
.nav-d .qbtn:hover{background:var(--ink2);}
/* ── Hero ── */
.hero{position:relative;overflow:hidden;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;}
.hero-img{position:absolute;inset:0;z-index:0;background:var(--ink);}
.hero-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;}
.hero-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(to top,rgba(10,8,5,.92) 0%,rgba(10,8,5,.55) 48%,rgba(10,8,5,.20) 100%),linear-gradient(to right,rgba(10,8,5,.60) 0%,transparent 68%);}
.hero-grid{position:absolute;inset:0;z-index:2;pointer-events:none;background-image:linear-gradient(rgba(201,168,76,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(201,168,76,.055) 1px,transparent 1px);background-size:60px 60px;}
.hero-inner{position:relative;z-index:3;padding:0 var(--ph) 40px;}
.hero-eyebrow{font-family:'Barlow Condensed',sans-serif;font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--gold-mid);margin-bottom:14px;display:flex;align-items:center;gap:12px;animation:fup .7s ease both;}
.hero-eyebrow::before{content:'';display:block;width:28px;height:1px;background:var(--gold-mid);flex-shrink:0;}
.hero-title{font-family:'Cormorant Garamond',serif;font-size:clamp(44px,12vw,96px);font-weight:700;line-height:.9;letter-spacing:-.02em;color:#f0e8d0;margin-bottom:8px;animation:fup .7s .1s ease both;}
.hero-title em{font-style:italic;color:var(--gold-mid);}
.hero-sub{font-family:'Barlow Condensed',sans-serif;font-size:clamp(12px,3.2vw,19px);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:rgba(240,232,208,.62);margin-bottom:14px;animation:fup .7s .15s ease both;}
.hero-tag{font-family:'Cormorant Garamond',serif;font-size:clamp(16px,4.2vw,24px);font-style:italic;color:var(--gold-light);margin-bottom:18px;line-height:1.35;animation:fup .7s .2s ease both;}
.hero-desc{font-size:14px;font-weight:300;color:rgba(240,232,208,.70);margin-bottom:28px;line-height:1.75;max-width:560px;animation:fup .7s .25s ease both;}
.hero-ctas{display:grid;grid-template-columns:1fr 1fr;gap:8px;animation:fup .7s .3s ease both;max-width:640px;}
.pcta{display:flex;flex-direction:column;align-items:flex-start;padding:14px 16px 12px;position:relative;overflow:hidden;transition:transform .2s,box-shadow .2s;cursor:pointer;}
.pcta:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(10,8,5,.3);}
.pcta::after{content:'';position:absolute;left:0;bottom:0;width:100%;height:2px;transform:scaleX(0);transform-origin:left;transition:transform .25s;}
.pcta:hover::after{transform:scaleX(1);}
.pcta-1{background:var(--gold-mid);color:var(--ink);}
.pcta-1::after{background:var(--ink);}
.pcta-1:hover{background:var(--gold-light);}
.pcta-2{background:rgba(26,21,16,.72);border:1px solid rgba(201,168,76,.42);color:#f0e8d0;backdrop-filter:blur(6px);}
.pcta-2::after,.pcta-3::after,.pcta-4::after{background:var(--gold-mid);}
.pcta-2:hover{background:rgba(26,21,16,.88);}
.pcta-3{background:rgba(255,255,255,.10);border:1px solid rgba(201,168,76,.38);color:#f0e8d0;backdrop-filter:blur(6px);}
.pcta-3:hover{background:rgba(255,255,255,.18);}
.pcta-4{background:rgba(201,168,76,.14);border:1px solid rgba(201,168,76,.50);color:#f0e8d0;backdrop-filter:blur(6px);}
.pcta-4:hover{background:rgba(201,168,76,.25);}
.pcta-ico{font-size:20px;line-height:1;margin-bottom:6px;}
.pcta-label{font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;line-height:1.1;}
.pcta-sub{font-family:'Barlow Condensed',sans-serif;font-size:10px;letter-spacing:.06em;opacity:.70;margin-top:3px;line-height:1.3;}
.pcta-arrow{position:absolute;right:12px;bottom:12px;font-family:'Barlow Condensed',sans-serif;font-size:16px;opacity:.45;transition:opacity .2s,transform .2s;}
.pcta:hover .pcta-arrow{opacity:1;transform:translate(2px,-2px);}
.hero-stats{position:relative;z-index:3;display:flex;border-top:1px solid rgba(201,168,76,.2);background:rgba(10,8,5,.60);backdrop-filter:blur(6px);}
.hstat{flex:1;text-align:center;padding:12px 6px;border-right:1px solid rgba(201,168,76,.13);}
.hstat:last-child{border-right:none;}
.hstat-num{font-family:'Barlow Condensed',sans-serif;font-size:clamp(18px,4.5vw,32px);font-weight:900;line-height:1;color:var(--gold-mid);}
.hstat-label{font-family:'Barlow Condensed',sans-serif;font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:rgba(240,232,208,.48);margin-top:2px;}
.gold-rule{height:1px;background:linear-gradient(90deg,transparent,var(--gold-mid) 25%,var(--gold-mid) 75%,transparent);opacity:.38;}
/* ── Sections ── */
section{padding:52px var(--ph);}
.sec-ey{font-family:'Barlow Condensed',sans-serif;font-size:10px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);margin-bottom:10px;display:flex;align-items:center;gap:10px;}
.sec-ey::before{content:'';display:block;width:22px;height:1px;background:var(--gold);flex-shrink:0;}
.sec-title{font-family:'Cormorant Garamond',serif;font-size:clamp(28px,7vw,50px);font-weight:700;line-height:1.05;letter-spacing:-.01em;color:var(--ink);margin-bottom:14px;}
.sec-title em{font-style:italic;color:var(--gold);}
.sec-body{font-size:14px;font-weight:300;color:var(--ink2);line-height:1.8;margin-bottom:32px;}
/* ── Pillars ── */
.pillars{background:var(--white);border-top:1px solid var(--b2);border-bottom:1px solid var(--b2);}
.pillars-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--b2);}
.pillar{background:var(--white);padding:24px 20px;position:relative;overflow:hidden;transition:background .25s;cursor:pointer;}
.pillar:hover{background:var(--gold-bg);}
.pillar::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--gold-mid);transform:scaleX(0);transform-origin:left;transition:transform .3s;}
.pillar:hover::before{transform:scaleX(1);}
.pillar-num{font-family:'Barlow Condensed',sans-serif;font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:10px;}
.pillar-icon{font-size:28px;margin-bottom:10px;line-height:1;}
.pillar-name{font-family:'Cormorant Garamond',serif;font-size:clamp(18px,4.5vw,26px);font-weight:700;color:var(--ink);margin-bottom:8px;line-height:1.1;}
.pillar-desc{font-size:12px;color:var(--ink2);line-height:1.6;}
.pillar-cta{display:inline-flex;align-items:center;gap:6px;margin-top:14px;font-family:'Barlow Condensed',sans-serif;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);transition:gap .2s;}
.pillar:hover .pillar-cta{gap:10px;}
/* ── About ── */
.about{background:var(--cream);border-top:1px solid var(--b2);border-bottom:1px solid var(--b2);}
.about-grid{display:flex;flex-direction:column;gap:32px;}
.about-logo-wrap{width:100%;max-width:340px;}
.about-logo-box{width:100%;aspect-ratio:4/3;border:1px solid var(--b3);background:var(--dark-grey);overflow:hidden;display:flex;align-items:center;justify-content:center;}
.about-logo-box img{width:100%;height:100%;object-fit:contain;padding:24px;}
.about-cap{font-family:'Barlow Condensed',sans-serif;font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink3);margin-top:8px;}
.creds{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px;}
.cred{font-family:'Barlow Condensed',sans-serif;font-size:9px;letter-spacing:.16em;text-transform:uppercase;padding:4px 10px;border:1px solid var(--b3);color:var(--gold);background:var(--cream);}
.a-nums{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--b2);margin-top:20px;}
.a-num{background:var(--cream2);padding:14px 12px;}
.a-val{font-family:'Barlow Condensed',sans-serif;font-size:28px;font-weight:900;color:var(--gold);line-height:1;}
.a-key{font-size:10px;color:var(--ink3);margin-top:2px;}
/* ── Services ── */
.services{background:var(--cream2);}
.srv-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--b2);border:1px solid var(--b2);}
.srv{background:var(--white);padding:18px 14px 16px;position:relative;overflow:hidden;transition:background .2s;}
.srv::after{content:'';position:absolute;left:0;top:0;width:3px;height:0;background:var(--gold);transition:height .3s;}
.srv:hover{background:var(--gold-bg);}
.srv:hover::after{height:100%;}
.srv svg{width:22px;height:22px;fill:var(--gold);margin-bottom:9px;}
.srv-n{font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:700;text-transform:uppercase;color:var(--ink);margin-bottom:4px;line-height:1.2;}
.srv-d{font-size:11px;color:var(--ink2);line-height:1.5;}
.srv-num{position:absolute;right:9px;bottom:7px;font-family:'Barlow Condensed',sans-serif;font-size:24px;font-weight:900;color:var(--b1);line-height:1;}
/* ── Portfolio ── */
.portfolio{background:var(--white);border-top:1px solid var(--b2);border-bottom:1px solid var(--b2);}
.port-tabs{display:flex;gap:2px;margin-bottom:20px;flex-wrap:wrap;}
.ptab{font-family:'Barlow Condensed',sans-serif;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:8px 16px;background:var(--cream2);color:var(--ink3);border:1px solid var(--b2);cursor:pointer;transition:all .2s;}
.ptab.active,.ptab:hover{background:var(--ink);color:var(--gold-mid);border-color:var(--ink);}
.port-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:var(--b2);}
.port-card{background:var(--cream3);overflow:hidden;position:relative;aspect-ratio:4/3;cursor:pointer;}
.port-card img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .4s ease;}
.port-card:hover img{transform:scale(1.04);}
.port-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(10,8,5,.80) 0%,transparent 55%);opacity:0;transition:opacity .3s;}
.port-card:hover .port-overlay{opacity:1;}
.port-info{position:absolute;bottom:0;left:0;right:0;padding:16px 14px;transform:translateY(6px);transition:transform .3s;}
.port-card:hover .port-info{transform:translateY(0);}
.port-cat{font-family:'Barlow Condensed',sans-serif;font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-mid);margin-bottom:4px;}
.port-name{font-family:'Barlow Condensed',sans-serif;font-size:14px;font-weight:800;text-transform:uppercase;color:#f0e8d0;line-height:1.15;}
.port-card::before{content:'';position:absolute;top:0;left:0;z-index:2;width:0;height:0;border-top:28px solid var(--gold-mid);border-right:28px solid transparent;pointer-events:none;}
.port-tag{position:absolute;top:7px;left:7px;z-index:3;font-family:'Barlow Condensed',sans-serif;font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--white);background:var(--ink);padding:2px 6px;}
.port-see-all{margin-top:20px;display:inline-flex;align-items:center;gap:8px;font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);border-bottom:1px solid var(--b2);padding-bottom:2px;transition:gap .2s,border-color .2s;}
.port-see-all:hover{gap:14px;border-color:var(--gold);}
.port-empty{padding:40px;text-align:center;font-size:13px;color:var(--ink3);background:var(--cream2);}
/* ── Stories ── */
.stories{background:var(--cream);border-top:1px solid var(--b2);border-bottom:1px solid var(--b2);}
.s-intro p{font-size:14px;color:var(--ink2);line-height:1.8;margin-bottom:12px;}
.s-grid{display:flex;flex-direction:column;gap:2px;}
.s-card{background:var(--white);overflow:hidden;border:1px solid var(--b2);transition:background .2s;}
.s-card:hover{background:var(--gold-bg);}
.s-img{width:100%;aspect-ratio:16/9;overflow:hidden;position:relative;background:var(--cream3);}
.s-img img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}
.s-img::before{content:'';position:absolute;top:0;left:0;z-index:2;width:0;height:0;border-top:30px solid var(--gold-mid);border-right:30px solid transparent;pointer-events:none;}
.s-tag{position:absolute;top:7px;left:7px;z-index:3;font-family:'Barlow Condensed',sans-serif;font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--white);background:var(--ink);padding:3px 7px;}
.s-body{padding:16px 14px 18px;}
.s-title{font-family:'Barlow Condensed',sans-serif;font-size:15px;font-weight:800;text-transform:uppercase;color:var(--ink);margin-bottom:6px;line-height:1.2;}
.s-detail{font-size:12px;color:var(--ink2);line-height:1.6;margin-bottom:12px;}
.s-metrics{display:flex;gap:14px;border-top:1px solid var(--b2);padding-top:10px;flex-wrap:wrap;}
.sm-v{font-family:'Barlow Condensed',sans-serif;font-size:16px;font-weight:900;color:var(--gold);}
.sm-k{font-size:9px;color:var(--ink3);}
.s-quote{margin-top:28px;border-left:3px solid var(--gold-mid);padding:16px 18px;background:var(--gold-pale);}
.sq-t{font-family:'Cormorant Garamond',serif;font-size:clamp(16px,4.5vw,25px);font-style:italic;color:var(--ink);line-height:1.35;margin-bottom:10px;}
.sq-c{font-size:11px;color:var(--ink3);}
.sq-c strong{color:var(--gold);}
/* ── Process ── */
.process{background:var(--ink);}
.process .sec-ey{color:var(--gold-mid);}
.process .sec-ey::before{background:var(--gold-mid);}
.process .sec-title{color:#f0e8d0;}
.process .sec-title em{color:var(--gold-mid);}
.process .sec-body{color:#a89870;}
.p-steps{display:flex;flex-direction:column;gap:1px;background:rgba(201,168,76,.12);}
.ps{background:#0f0e0a;padding:22px 18px;border-left:3px solid rgba(201,168,76,.12);transition:border-color .2s;}
.ps:hover{border-color:var(--gold-mid);}
.ps-n{font-family:'Barlow Condensed',sans-serif;font-size:48px;font-weight:900;line-height:1;color:rgba(201,168,76,.10);margin-bottom:6px;}
.ps-t{font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:700;text-transform:uppercase;color:#f0e8d0;margin-bottom:5px;}
.ps-d{font-size:12px;color:#a89870;line-height:1.6;}
/* ── Contact ── */
.contact{background:var(--white);border-top:1px solid var(--b2);}
.c-grid{display:flex;flex-direction:column;gap:36px;}
.fg{margin-bottom:14px;}
.fg label{display:block;font-family:'Barlow Condensed',sans-serif;font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink3);margin-bottom:5px;}
.fg input,.fg select,.fg textarea{width:100%;padding:11px 13px;background:var(--cream);color:var(--ink);border:1px solid var(--b2);outline:none;font-family:'Barlow',sans-serif;font-size:14px;transition:border-color .2s;-webkit-appearance:none;border-radius:0;}
.fg input:focus,.fg select:focus,.fg textarea:focus{border-color:var(--gold);}
.fg textarea{height:95px;resize:vertical;}
.btn-sub{width:100%;padding:15px;font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;background:var(--ink);color:var(--gold-mid);border:none;cursor:pointer;transition:background .2s;}
.btn-sub:hover{background:var(--ink2);}
.ci-lbl{font-family:'Barlow Condensed',sans-serif;font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:3px;}
.ci-val{font-size:13px;color:var(--ink2);line-height:1.7;}
.c-info-b{margin-bottom:22px;}
.c-certs{display:flex;flex-wrap:wrap;gap:5px;margin-top:9px;}
.c-cert{font-family:'Barlow Condensed',sans-serif;font-size:9px;letter-spacing:.12em;text-transform:uppercase;padding:4px 10px;border:1px solid var(--b3);color:var(--gold);background:var(--cream);}
.why{margin-top:20px;border:1px solid var(--b2);padding:16px 14px;background:var(--cream2);}
.why-b{font-size:12px;color:var(--ink2);line-height:1.85;margin-top:7px;}
/* ── CTA Band ── */
.cta-band{background:var(--ink);padding:44px var(--ph);display:flex;flex-direction:column;gap:20px;align-items:flex-start;}
.ctb-tag{font-family:'Cormorant Garamond',serif;font-size:clamp(24px,7vw,46px);font-weight:700;font-style:italic;color:var(--gold-mid);line-height:1.1;margin-bottom:5px;}
.ctb-sub{font-family:'Barlow Condensed',sans-serif;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#6a5e42;}
.btn-ctag{font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;padding:13px 32px;background:var(--gold-mid);color:var(--ink);border:none;cursor:pointer;transition:background .2s;white-space:nowrap;display:inline-block;}
.btn-ctag:hover{background:var(--gold-light);}
/* ── Footer ── */
footer{background:var(--ink);border-top:1px solid rgba(201,168,76,.14);}
.f-main{padding:36px var(--ph) 24px;display:flex;flex-direction:column;gap:28px;}
.f-brand-n{font-family:'Barlow Condensed',sans-serif;font-size:19px;font-weight:900;text-transform:uppercase;color:#f0e8d0;margin-bottom:3px;}
.f-brand-n span{color:var(--gold-mid);}
.f-brand-tag{font-family:'Cormorant Garamond',serif;font-size:13px;font-style:italic;color:var(--gold-mid);margin-bottom:10px;}
.f-brand-desc{font-size:12px;color:#6a5e42;line-height:1.7;}
.f-cols{display:grid;grid-template-columns:1fr 1fr;gap:20px;}
.f-col-t{font-family:'Barlow Condensed',sans-serif;font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-mid);margin-bottom:10px;}
.f-links{list-style:none;}
.f-links li{margin-bottom:6px;}
.f-links a{font-size:12px;color:#6a5e42;transition:color .2s;}
.f-links a:hover{color:var(--gold-mid);}
.f-bot{border-top:1px solid rgba(201,168,76,.12);padding:14px var(--ph);display:flex;flex-direction:column;gap:5px;align-items:center;text-align:center;}
.f-copy,.f-reg{font-size:10px;color:#6a5e42;}
.f-reg span{color:var(--gold-mid);}
/* ── Page hero (inner pages) ── */
.page-hero{background:var(--ink);padding:72px var(--ph) 52px;position:relative;overflow:hidden;}
.page-hero::before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(201,168,76,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(201,168,76,.05) 1px,transparent 1px);background-size:60px 60px;}
.page-hero .sec-ey{color:var(--gold-mid);}
.page-hero .sec-ey::before{background:var(--gold-mid);}
.page-hero .sec-title{color:#f0e8d0;}
.page-hero .sec-title em{color:var(--gold-mid);}
.page-hero .sec-body{color:#a89870;margin-bottom:0;}
/* ── Reveal ── */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease;}
.reveal.visible{opacity:1;transform:translateY(0);}
@keyframes fup{from{opacity:0;transform:translateY(16px);}to{opacity:1;transform:translateY(0);}}
/* ── Alerts ── */
.alert{padding:12px 16px;margin-bottom:16px;font-size:13px;font-family:'Barlow Condensed',sans-serif;letter-spacing:.06em;}
.alert-ok{background:#d4edda;color:#155724;border:1px solid #c3e6cb;}
.alert-err{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb;}
/* ── Responsive ── */
@media(min-width:640px){
  .topbar{flex-direction:row;justify-content:space-between;padding:7px var(--pw);}
  section{padding:68px var(--pw);}
  .hero-inner{padding:0 var(--pw) 52px;}
  .hero-ctas{grid-template-columns:repeat(5,1fr);max-width:100%;}
  .pillars-grid{grid-template-columns:repeat(5,1fr);}
  .about-grid{flex-direction:row;gap:48px;align-items:flex-start;}
  .about-logo-wrap{flex-shrink:0;width:260px;}
  .port-grid{grid-template-columns:repeat(3,1fr);}
  .s-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px;}
  .p-steps{display:grid;grid-template-columns:1fr 1fr;gap:1px;}
  .c-grid{flex-direction:row;gap:48px;}
  .c-grid>div{flex:1;}
  .cta-band{flex-direction:row;align-items:center;justify-content:space-between;padding:48px var(--pw);}
  .f-main{padding:44px var(--pw) 28px;}
  .f-bot{flex-direction:row;justify-content:space-between;padding:16px var(--pw);text-align:left;}
  .f-cols{grid-template-columns:repeat(3,1fr);}
  .page-hero{padding:80px var(--pw) 60px;}
}
.pcta-5{background:rgba(180,50,30,.18);border:1px solid rgba(220,80,40,.42);color:#f0e8d0;backdrop-filter:blur(6px);}
.pcta-5:hover{background:rgba(180,50,30,.30);}
.pcta-5::after{background:var(--gold-mid);}
@media(min-width:1024px){
  nav{display:none;}
  .nav-d{display:flex!important;}
  .srv-grid{grid-template-columns:repeat(4,1fr);}
  .port-grid{grid-template-columns:repeat(4,1fr);}
  .s-grid{grid-template-columns:repeat(3,1fr);}
  .p-steps{grid-template-columns:repeat(4,1fr);}
}

/* ═══ SERVICE DETAIL PAGE LAYOUT ═══════════════════════════════ */
.srv-detail-grid{display:flex;flex-direction:column;gap:36px;}
.srv-detail-main{}
.srv-body-text{font-size:15px;color:var(--ink2);line-height:1.85;margin-bottom:24px;}
.srv-body-text p{margin-bottom:14px;}
.srv-cta-box{padding:24px;background:var(--gold-pale);border-left:4px solid var(--gold-mid);}
.srv-cta-label{font-family:'Barlow Condensed',sans-serif;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:8px;}
.srv-cta-box p{font-size:14px;color:var(--ink2);margin-bottom:16px;}
.srv-cta-btn{display:inline-block;padding:12px 28px;background:var(--ink);color:var(--gold-mid);font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;transition:background .2s;}
.srv-cta-btn:hover{background:var(--ink2);}
.srv-sidebar{}
.srv-sidebar-head{font-family:'Barlow Condensed',sans-serif;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:10px;}
.srv-sidebar-list{border:1px solid var(--b2);margin-bottom:18px;}
.srv-sidebar-link{display:block;padding:10px 14px;font-family:'Barlow Condensed',sans-serif;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink2);border-bottom:1px solid var(--b1);text-decoration:none;transition:background .2s,color .2s;}
.srv-sidebar-link:hover{background:var(--gold-bg);color:var(--gold);}
.srv-sidebar-link--active{background:var(--ink);color:var(--white)!important;}
.srv-sidebar-link--active:hover{background:var(--ink);}
.srv-sidebar-creds{padding:16px;background:var(--cream2);border:1px solid var(--b2);}
.srv-sidebar-more{display:block;margin-top:10px;font-family:'Barlow Condensed',sans-serif;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);text-decoration:none;}
.srv-sidebar-more:hover{color:var(--gold-light);}

@media(min-width:768px){
  .srv-detail-grid{display:grid;grid-template-columns:1fr 260px;gap:48px;align-items:start;}
}

/* ═══ MOSAIC GALLERY ════════════════════════════════════════════ */
.gal-mosaic{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  grid-auto-rows:200px;
  gap:4px;
  margin-bottom:20px;
}
/* Wide item spans 2 columns */
.gal-wide{ grid-column: span 2; }
/* Tall item spans 2 rows */
.gal-tall{ grid-row: span 2; }

.gal-item{
  position:relative;
  overflow:hidden;
  background:var(--cream3);
  cursor:pointer;
  outline:none;
}
.gal-item img{
  width:100%;height:100%;
  object-fit:cover;object-position:center;
  display:block;
  transition:transform .45s ease;
}
.gal-item:hover img{ transform:scale(1.06); }
.gal-item:focus-visible{ outline:3px solid var(--gold-mid); outline-offset:2px; }

/* Hover overlay */
.gal-hover{
  position:absolute;inset:0;
  background:linear-gradient(to top,rgba(10,8,5,.75) 0%,rgba(10,8,5,.0) 55%);
  opacity:0;
  transition:opacity .3s;
  display:flex;flex-direction:column;justify-content:flex-end;
  padding:14px 12px;
}
.gal-item:hover .gal-hover{ opacity:1; }

.gal-zoom{
  position:absolute;top:50%;left:50%;
  transform:translate(-50%,-50%) scale(.8);
  font-size:28px;color:rgba(255,255,255,.9);
  transition:transform .25s;
  line-height:1;
}
.gal-item:hover .gal-zoom{ transform:translate(-50%,-50%) scale(1); }

.gal-caption{
  font-family:'Barlow Condensed',sans-serif;
  font-size:11px;letter-spacing:.12em;text-transform:uppercase;
  color:rgba(240,232,208,.9);line-height:1.3;
}

/* Placeholder (no image) */
.gal-placeholder{
  width:100%;height:100%;
  display:flex;align-items:center;justify-content:center;
  background:var(--cream2);
  font-family:'Barlow Condensed',sans-serif;
  font-size:12px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--ink3);padding:12px;text-align:center;
}

/* Gold corner triangle on each tile */
.gal-item::before{
  content:'';
  position:absolute;top:0;left:0;z-index:3;
  width:0;height:0;
  border-top:22px solid var(--gold-mid);
  border-right:22px solid transparent;
  pointer-events:none;
  opacity:.7;
}

/* Mobile: 2-col mosaic */
@media(max-width:640px){
  .gal-mosaic{ grid-template-columns:repeat(2,1fr); grid-auto-rows:150px; }
  .gal-wide{ grid-column: span 2; }
}
/* 1-item: full width */
.gal-mosaic .gal-wide.gal-tall:only-child{ grid-row:span 1; height:280px; }

/* ═══ LIGHTBOX ══════════════════════════════════════════════════ */
.lb-wrap{
  position:fixed;inset:0;z-index:9000;
  display:flex;align-items:center;justify-content:center;
}
.lb-wrap[hidden]{ display:none!important; }

.lb-bg{
  position:absolute;inset:0;
  background:rgba(8,7,5,.94);
  cursor:zoom-out;
}

.lb-stage{
  position:relative;z-index:1;
  display:flex;flex-direction:column;align-items:center;
  max-width:92vw;max-height:90svh;
  padding:0 56px;
}

.lb-img{
  max-width:100%;max-height:80svh;
  object-fit:contain;
  border:1px solid rgba(201,168,76,.2);
  box-shadow:0 16px 64px rgba(0,0,0,.7);
  display:block;
  transition:opacity .2s;
}
.lb-img.lb-loading{ opacity:.3; }

.lb-caption{
  margin-top:12px;
  font-family:'Barlow Condensed',sans-serif;
  font-size:13px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--gold-mid);text-align:center;min-height:18px;
}

.lb-counter{
  margin-top:5px;
  font-family:'Barlow Condensed',sans-serif;
  font-size:10px;letter-spacing:.18em;text-transform:uppercase;
  color:rgba(240,232,208,.35);text-align:center;
}

/* Nav buttons */
.lb-close,.lb-prev,.lb-next{
  position:fixed;z-index:2;
  background:rgba(26,21,16,.7);
  border:1px solid rgba(201,168,76,.2);
  color:#f0e8d0;cursor:pointer;
  font-family:'Barlow Condensed',sans-serif;
  transition:background .2s,border-color .2s;
  line-height:1;
}
.lb-close:hover,.lb-prev:hover,.lb-next:hover{
  background:rgba(201,168,76,.18);border-color:var(--gold-mid);
}
.lb-close{
  top:16px;right:16px;
  width:40px;height:40px;font-size:18px;
  display:flex;align-items:center;justify-content:center;
}
.lb-prev,.lb-next{
  top:50%;transform:translateY(-50%);
  width:44px;height:60px;font-size:28px;
  display:flex;align-items:center;justify-content:center;
}
.lb-prev{left:8px;}
.lb-next{right:8px;}

/* Keyboard focus */
.lb-close:focus-visible,.lb-prev:focus-visible,.lb-next:focus-visible{
  outline:2px solid var(--gold-mid);outline-offset:2px;
}

/* Hide prev/next when only 1 image */
.lb-wrap.lb-single .lb-prev,
.lb-wrap.lb-single .lb-next{ display:none; }

/* ═══ PILLAR PAGE LAYOUT ════════════════════════════════════════ */
.pillar-main-grid{display:flex;flex-direction:column;gap:36px;}
.pillar-sidebar{}
.ps-block{margin-bottom:18px;}
.ps-block-title{font-family:'Barlow Condensed',sans-serif;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:10px;}
.ps-block-list{border:1px solid var(--b2);}
.ps-block-link{display:block;padding:10px 14px;font-family:'Barlow Condensed',sans-serif;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink2);border-bottom:1px solid var(--b1);text-decoration:none;transition:background .15s,color .15s;}
.ps-block-link:hover{background:var(--gold-bg);color:var(--gold);}
.ps-block-more{display:block;margin-top:8px;font-family:'Barlow Condensed',sans-serif;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);text-decoration:none;}
.ps-block-creds{padding:14px;background:var(--cream2);border:1px solid var(--b2);}
.pillar-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-top:4px;margin-bottom:28px;}
.pillar-feat{padding:16px 14px;background:var(--cream2);border:1px solid var(--b2);border-left:3px solid var(--gold-mid);}
.pillar-feat-title{font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:700;text-transform:uppercase;color:var(--ink);margin-bottom:5px;display:flex;align-items:center;justify-content:space-between;gap:6px;}
.pillar-feat-desc{font-size:12px;color:var(--ink2);line-height:1.6;}
.pillar-feat-arrow{font-size:14px;color:var(--gold);opacity:0;transform:translateX(-4px);transition:opacity .2s,transform .2s;flex-shrink:0;}
.pillar-feat-view{font-family:'Barlow Condensed',sans-serif;font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-top:10px;opacity:0;transition:opacity .2s;}
/* Clickable variant */
.pillar-feat--link{text-decoration:none;cursor:pointer;transition:background .2s,border-color .2s,transform .15s;}
.pillar-feat--link:hover{background:var(--gold-bg);border-left-color:var(--gold);transform:translateY(-2px);}
.pillar-feat--link:hover .pillar-feat-arrow{opacity:1;transform:translateX(0);}
.pillar-feat--link:hover .pillar-feat-view{opacity:1;}
.pillar-feat--link:hover .pillar-feat-title{color:var(--gold);}
.pillar-hero-cta{padding:20px;background:var(--gold-pale);border-left:4px solid var(--gold-mid);}
.pillar-hero-cta-label{font-family:'Barlow Condensed',sans-serif;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:6px;}
.pillar-hero-cta p{font-size:13px;color:var(--ink2);margin-bottom:14px;}
.pillar-btn-dark{display:inline-block;padding:12px 28px;background:var(--ink);color:var(--gold-mid);font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;transition:background .2s;}
.pillar-btn-dark:hover{background:var(--ink2);}

@media(min-width:768px){.pillar-main-grid{display:grid;grid-template-columns:1fr 260px;gap:48px;align-items:start;}}

/* ═══ PILLAR CARDS GRID ════════════════════════════════════════ */
.pillar-cards-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:16px;
}
.pillar-card-tile{
  display:flex;flex-direction:column;
  background:var(--white);
  border:1px solid var(--b2);
  text-decoration:none;
  overflow:hidden;
  transition:box-shadow .25s, transform .25s, border-color .25s;
  cursor:pointer;
}
.pillar-card-tile:hover{
  box-shadow:0 8px 32px rgba(26,21,16,.12);
  transform:translateY(-3px);
  border-color:var(--gold-mid);
}
.pillar-card-img{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  overflow:hidden;
  background:var(--cream3);
  flex-shrink:0;
}
.pillar-card-img img{
  width:100%;height:100%;
  object-fit:cover;object-position:center;
  display:block;
  transition:transform .4s ease;
}
.pillar-card-tile:hover .pillar-card-img img{transform:scale(1.04);}
.pillar-card-noimg{
  width:100%;height:100%;
  display:flex;align-items:center;justify-content:center;
  background:var(--cream2);
  font-family:'Barlow Condensed',sans-serif;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);
  padding:16px;text-align:center;
}
/* Gold corner */
.pillar-card-corner{
  position:absolute;top:0;left:0;z-index:2;
  width:0;height:0;
  border-top:28px solid var(--gold-mid);
  border-right:28px solid transparent;
  pointer-events:none;
}
/* Photo count badge */
.pillar-card-badge{
  position:absolute;top:8px;right:8px;z-index:3;
  font-family:'Barlow Condensed',sans-serif;font-size:9px;letter-spacing:.18em;text-transform:uppercase;
  padding:3px 8px;background:rgba(10,8,5,.7);color:var(--gold-mid);
  backdrop-filter:blur(4px);
}
/* Hover overlay */
.pillar-card-overlay{
  position:absolute;inset:0;z-index:4;
  background:rgba(10,8,5,.52);
  display:flex;align-items:center;justify-content:center;
  opacity:0;transition:opacity .25s;
}
.pillar-card-tile:hover .pillar-card-overlay{opacity:1;}
.pillar-card-view{
  font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:#f0e8d0;border:1px solid rgba(201,168,76,.5);padding:10px 20px;
}
/* Card body */
.pillar-card-body{padding:18px 16px 20px;}
.pillar-card-title{font-family:'Barlow Condensed',sans-serif;font-size:16px;font-weight:800;text-transform:uppercase;color:var(--ink);margin-bottom:5px;line-height:1.2;}
.pillar-card-sub{font-family:'Barlow Condensed',sans-serif;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:7px;}
.pillar-card-desc{font-size:12px;color:var(--ink2);line-height:1.6;margin-bottom:12px;}
.pillar-card-cta{font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);transition:letter-spacing .2s;}
.pillar-card-tile:hover .pillar-card-cta{letter-spacing:.2em;}

/* Responsive: 2-col on tablet, 3-col on wide */
@media(min-width:560px){.pillar-cards-grid{grid-template-columns:repeat(2,1fr);}}
@media(min-width:1024px){.pillar-cards-grid{grid-template-columns:repeat(3,1fr);}}

/* ═══ CARD DETAIL PAGE ══════════════════════════════════════════ */
.card-detail-grid{display:flex;flex-direction:column;gap:36px;}
.card-detail-sidebar{}

/* Sticky CTA box (desktop) */
.card-cta-sticky{
  padding:20px;background:var(--white);border:1px solid var(--b2);
  position:sticky;top:80px;
}
.card-cta-primary{
  display:block;padding:13px 16px;background:var(--ink);color:var(--gold-mid);
  font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  text-decoration:none;text-align:center;margin-bottom:8px;transition:background .2s;
}
.card-cta-primary:hover{background:var(--ink2);}
.card-cta-secondary{
  display:block;padding:11px 16px;background:transparent;color:var(--ink2);border:1px solid var(--b2);
  font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;
  text-decoration:none;text-align:center;transition:border-color .2s,color .2s;
}
.card-cta-secondary:hover{border-color:var(--gold);color:var(--gold);}

/* Other cards sidebar links */
.other-card-link{
  display:flex;align-items:center;gap:10px;padding:10px 0;
  border-bottom:1px solid var(--b1);text-decoration:none;
  transition:opacity .2s;
}
.other-card-link:hover{opacity:.75;}
.other-card-thumb{width:60px;height:44px;object-fit:cover;flex-shrink:0;border:1px solid var(--b2);}
.other-card-ph{background:var(--cream2);}

/* Inline quick inquiry form */
.card-inquiry-inline{
  padding:24px 20px;
  background:var(--ink);
  margin-top:32px;
}
.quick-label{
  display:block;font-family:'Barlow Condensed',sans-serif;font-size:9px;letter-spacing:.2em;text-transform:uppercase;
  color:rgba(240,232,208,.55);margin-bottom:5px;
}
.quick-input{
  width:100%;padding:10px 12px;background:#221e16;color:#f0e8d0;
  border:1px solid rgba(201,168,76,.25);outline:none;font-family:'Barlow',sans-serif;font-size:13px;
  transition:border-color .2s;border-radius:0;-webkit-appearance:none;
}
.quick-input:focus{border-color:var(--gold-mid);}
.card-inquiry-btn{
  width:100%;margin-top:10px;padding:14px;
  background:var(--gold-mid);color:var(--ink);
  font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  border:none;cursor:pointer;transition:background .2s;
}
.card-inquiry-btn:hover{background:var(--gold-light);}

/* Sticky bottom bar (mobile) */
.card-sticky-bar{
  position:fixed;bottom:0;left:0;right:0;z-index:800;
  display:flex;align-items:center;justify-content:space-between;
  padding:12px var(--ph);
  background:rgba(10,8,5,.95);border-top:1px solid rgba(201,168,76,.2);
  backdrop-filter:blur(8px);
  transform:translateY(100%);transition:transform .3s ease;
}
.sticky-bar-btn{
  font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  padding:10px 22px;background:var(--gold-mid);color:var(--ink);text-decoration:none;white-space:nowrap;
  transition:background .2s;
}
.sticky-bar-btn:hover{background:var(--gold-light);}

/* Lightbox inquiry strip */
.lb-inquiry-strip{
  display:flex;align-items:center;gap:14px;margin-top:14px;flex-wrap:wrap;justify-content:center;
}
.lb-inquiry-btn{
  font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  padding:9px 22px;background:var(--gold-mid);color:var(--ink);text-decoration:none;
  transition:background .2s;white-space:nowrap;
}
.lb-inquiry-btn:hover{background:var(--gold-light);}

/* Responsive card detail */
@media(min-width:768px){
  .card-detail-grid{display:grid;grid-template-columns:1fr 280px;gap:48px;align-items:start;}
  .card-sticky-bar{display:none;}
}

/* ═══ PILLAR CARD — PROFESSIONAL GALLERY ════════════════════════ */
.pg-wrap{ margin-bottom:36px; }

/* Section label */
.pg-label{
  display:flex;align-items:center;gap:10px;
  font-family:'Barlow Condensed',sans-serif;font-size:10px;letter-spacing:.22em;text-transform:uppercase;
  color:var(--gold);margin-bottom:14px;
}
.pg-rule{ display:block;width:22px;height:1px;background:var(--gold);flex-shrink:0; }
.pg-count{
  margin-left:auto;
  font-family:'Barlow Condensed',sans-serif;font-size:9px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--ink3);font-weight:400;
}

/* Hero image */
.pg-hero{
  position:relative;width:100%;
  aspect-ratio:16/9;
  overflow:hidden;background:var(--cream3);
  cursor:zoom-in;margin-bottom:6px;
}
.pg-hero img{
  width:100%;height:100%;
  object-fit:cover;object-position:center;
  display:block;
  transition:transform .5s ease;
}
.pg-hero:hover img{ transform:scale(1.03); }
.pg-hero-overlay{
  position:absolute;inset:0;
  background:linear-gradient(to top,rgba(10,8,5,.72) 0%,rgba(10,8,5,.0) 50%);
  opacity:0;transition:opacity .3s;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:6px;
}
.pg-hero:hover .pg-hero-overlay{ opacity:1; }
.pg-hero-icon{
  font-size:36px;color:#f0e8d0;
  line-height:1;
  text-shadow:0 2px 12px rgba(0,0,0,.4);
}
.pg-hero-hint{
  font-family:'Barlow Condensed',sans-serif;font-size:11px;letter-spacing:.18em;text-transform:uppercase;
  color:rgba(240,232,208,.8);
}
.pg-hero-cap{
  position:absolute;bottom:12px;left:14px;right:14px;
  font-family:'Barlow Condensed',sans-serif;font-size:11px;letter-spacing:.1em;text-transform:uppercase;
  color:rgba(240,232,208,.85);
}
.pg-badge{
  position:absolute;top:10px;right:10px;
  background:rgba(10,8,5,.72);color:var(--gold-mid);
  font-family:'Barlow Condensed',sans-serif;font-size:9px;letter-spacing:.18em;text-transform:uppercase;
  padding:4px 10px;backdrop-filter:blur(4px);
}

/* Thumbnail strip */
.pg-strip{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:6px;margin-bottom:10px;
}
.pg-thumb{
  position:relative;aspect-ratio:4/3;overflow:hidden;
  background:var(--cream3);cursor:zoom-in;
}
.pg-thumb img{
  width:100%;height:100%;object-fit:cover;object-position:center;display:block;
  transition:transform .35s ease;
}
.pg-thumb:hover img{ transform:scale(1.06); }
.pg-thumb-overlay{
  position:absolute;inset:0;
  background:rgba(10,8,5,.55);
  opacity:0;transition:opacity .25s;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;
}
.pg-thumb:hover .pg-thumb-overlay{ opacity:1; }
.pg-thumb-zoom{
  font-size:20px;color:#f0e8d0;line-height:1;
}
.pg-thumb-cap{
  font-family:'Barlow Condensed',sans-serif;font-size:9px;letter-spacing:.12em;text-transform:uppercase;
  color:rgba(240,232,208,.8);padding:0 6px;text-align:center;
}

/* Show all toggle */
.pg-toggle{
  width:100%;padding:10px;margin-bottom:14px;
  background:var(--cream2);border:1px solid var(--b2);
  font-family:'Barlow Condensed',sans-serif;font-size:10px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--ink2);cursor:pointer;transition:background .2s,border-color .2s,color .2s;
}
.pg-toggle:hover{ background:var(--gold-pale);border-color:var(--gold-mid);color:var(--gold); }

/* Inline CTA strip after gallery */
.pg-cta-strip{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:14px 16px;background:var(--gold-pale);border-left:3px solid var(--gold-mid);
  flex-wrap:wrap;
}
.pg-cta-text{
  display:flex;flex-direction:column;gap:2px;
}
.pg-cta-text span{
  font-family:'Barlow Condensed',sans-serif;font-size:9px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--ink3);
}
.pg-cta-text strong{
  font-family:'Barlow Condensed',sans-serif;font-size:13px;font-weight:700;text-transform:uppercase;
  color:var(--ink);
}
.pg-cta-btn{
  font-family:'Barlow Condensed',sans-serif;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  padding:10px 22px;background:var(--ink);color:var(--gold-mid);
  text-decoration:none;white-space:nowrap;transition:background .2s;flex-shrink:0;
}
.pg-cta-btn:hover{ background:var(--ink2); }

/* Mobile: 2-col thumb strip */
@media(max-width:480px){
  .pg-strip{ grid-template-columns:repeat(2,1fr); }
}

/* ═══ SERVICE CARDS — CLICKABLE LINK VARIANT ════════════════════ */
.srv--link{
  display:block;text-decoration:none;
  transition:background .2s,transform .15s,box-shadow .2s;
}
.srv--link:hover{background:var(--gold-bg);transform:translateY(-2px);box-shadow:0 4px 16px rgba(26,21,16,.08);}
.srv--link:hover .srv-n{color:var(--gold);}
.srv--link:hover::after{height:100%;}
.srv-arrow{
  position:absolute;bottom:10px;right:10px;
  font-family:'Barlow Condensed',sans-serif;font-size:14px;
  color:var(--gold);opacity:0;transform:translateX(-4px);
  transition:opacity .2s,transform .2s;
}
.srv--link:hover .srv-arrow{opacity:1;transform:translateX(0);}

/* ═══ SOCIAL MEDIA ICONS ════════════════════════════════════════ */
.social-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.social-link{
  display:flex;align-items:center;justify-content:center;
  width:36px;height:36px;
  border:1px solid rgba(201,168,76,.25);
  color:var(--gold-mid);
  transition:background .2s,border-color .2s,color .2s,transform .15s;
  text-decoration:none;border-radius:0;
}
.social-link:hover{background:var(--gold-mid);color:var(--ink);border-color:var(--gold-mid);transform:translateY(-2px);}
.social-link svg{width:16px;height:16px;fill:currentColor;}

/* Social links in footer (dark bg) */
.f-social{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap;}
.f-social-link{
  display:flex;align-items:center;justify-content:center;
  width:32px;height:32px;
  border:1px solid rgba(201,168,76,.2);
  color:rgba(201,168,76,.6);
  transition:all .2s;text-decoration:none;
}
.f-social-link:hover{background:rgba(201,168,76,.15);color:var(--gold-mid);border-color:var(--gold-mid);}
.f-social-link svg{width:14px;height:14px;fill:currentColor;}

/* Social contact section */
.social-channel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;}
.social-channel{
  display:flex;align-items:center;gap:14px;
  padding:16px 14px;background:var(--white);border:1px solid var(--b2);
  text-decoration:none;transition:background .2s,border-color .2s,transform .15s;
}
.social-channel:hover{background:var(--gold-bg);border-color:var(--gold-mid);transform:translateY(-2px);}
.social-channel-icon{width:38px;height:38px;display:flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:8px;}
.social-channel-icon svg{width:20px;height:20px;}
.social-channel-name{font-family:'Barlow Condensed',sans-serif;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--ink);line-height:1.2;}
.social-channel-handle{font-size:11px;color:var(--ink3);margin-top:2px;}

/* Credential consistency strip */
.cred-strip{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px;}
.cred-strip a,.cred-strip span{
  font-family:'Barlow Condensed',sans-serif;font-size:9px;letter-spacing:.16em;text-transform:uppercase;
  padding:5px 12px;border:1px solid var(--b3);color:var(--gold);background:var(--cream);
  text-decoration:none;transition:background .15s,border-color .15s;
}
.cred-strip a:hover{background:var(--gold-pale);border-color:var(--gold-mid);}
