
/* === RESET & GLOBAL === */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:#080808;color:#f2f0eb;font-family:'Outfit',sans-serif;font-weight:300;line-height:1.7;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
:root{--gold:#c8a96e;--gold2:#e2c485;--gdim:rgba(200,169,110,.12);--gbr:rgba(200,169,110,.28);--w:#f2f0eb;--w8:rgba(242,240,235,.8);--w6:rgba(242,240,235,.6);--w3:rgba(242,240,235,.3);--w1:rgba(242,240,235,.1);--s1:#141414;--s2:#1c1c1c;--s3:#242424;--br:rgba(255,255,255,.07);--ease:cubic-bezier(.32,.72,0,1)}
h1,h2,h3,h4{font-family:'Cormorant Garamond',serif;font-weight:600;line-height:1.1;letter-spacing:-.02em}
a{color:inherit;text-decoration:none;transition:color .3s}
img{display:block;max-width:100%}
button{font-family:'Outfit',sans-serif}
.wrap{max-width:1200px;margin:0 auto;padding:0 2rem}
section.sec{padding:6rem 0}
.sec-dark{background:var(--s1)}
.sec-s2{background:var(--s2)}

/* === EYEBROW === */
.ey{display:inline-flex;align-items:center;gap:.6rem;font-size:.6rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);margin-bottom:1rem;line-height:1}
.ey::before{content:'';width:1.5rem;height:1px;background:var(--gold);flex-shrink:0}
.sec-title{font-size:clamp(2rem,3.8vw,3.4rem);margin-bottom:.85rem}
.sec-title em,.hero-h1 em,.ph-h1 em,.cta-h2 em{font-style:italic;color:var(--gold)}
.sec-sub{color:var(--w6);max-width:560px;font-size:.9rem;line-height:1.85;margin-bottom:2.5rem}

/* === REVEAL === */
.rv{opacity:0;transform:translateY(24px);filter:blur(4px);transition:opacity .9s var(--ease),transform .9s var(--ease),filter .9s var(--ease)}
.rv.in{opacity:1;transform:none;filter:none}
.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}
.d4{transition-delay:.4s}.d5{transition-delay:.5s}

/* === BUTTONS === */
.btn-gold{display:inline-flex;align-items:center;gap:.55rem;background:var(--gold);color:#080808;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:.8rem 1.6rem;border-radius:100px;text-decoration:none;border:none;cursor:pointer;transition:transform .4s var(--ease),background-color .4s var(--ease),border-color .4s var(--ease),color .4s var(--ease),box-shadow .4s var(--ease);white-space:nowrap;font-family:'Outfit',sans-serif}
.btn-gold:hover,.btn-gold:focus{background:var(--gold2);transform:translateY(-2px);outline:none}
.btn-gold .arr{width:1.5rem;height:1.5rem;border-radius:50%;background:rgba(0,0,0,.18);display:flex;align-items:center;justify-content:center;font-size:.72rem;transition:transform .4s var(--ease);flex-shrink:0}
.btn-gold:hover .arr{transform:translate(2px,-2px)}
.btn-ghost{display:inline-flex;align-items:center;gap:.55rem;background:transparent;color:var(--w);font-size:.68rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;padding:.78rem 1.5rem;border-radius:100px;text-decoration:none;border:1px solid var(--br);transition:transform .4s var(--ease),background-color .4s var(--ease),border-color .4s var(--ease),color .4s var(--ease),box-shadow .4s var(--ease);white-space:nowrap}
.btn-ghost:hover,.btn-ghost:focus{border-color:var(--gbr);color:var(--gold);transform:translateY(-2px);outline:none}
.btn-dark{display:inline-flex;align-items:center;gap:.65rem;background:#080808;color:var(--gold);font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:.9rem 2.25rem;border-radius:100px;text-decoration:none;transition:transform .4s var(--ease),background-color .4s var(--ease),border-color .4s var(--ease),color .4s var(--ease),box-shadow .4s var(--ease)}
.btn-dark:hover{background:#1c1c1c;transform:translateY(-2px)}

/* === NAV — SINGLE, ALWAYS PILL, FIXED TOP === */
#igc-nav{position:fixed;top:1.1rem;left:50%;transform:translateX(-50%);z-index:9000;width:calc(100% - 2rem);max-width:1300px;pointer-events:none}
#igc-nav *{pointer-events:all}
.nav-pill{display:flex;align-items:center;justify-content:space-between;padding:.8rem 1.1rem .8rem 1.4rem;background:rgba(8,8,8,.76);border:1px solid var(--br);border-radius:100px;backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);transition:background .4s,border-color .4s}
.nav-pill.sc{background:rgba(8,8,8,.96);border-color:rgba(255,255,255,.1)}
.nav-logo{font-family:'Cormorant Garamond',serif;font-size:1rem;font-weight:700;letter-spacing:.04em;text-decoration:none;color:var(--w);line-height:1;white-space:nowrap;flex-shrink:0}
.nav-logo span{color:var(--gold)}
.nav-links{display:flex;gap:1.2rem;list-style:none;margin:0;padding:0}.nav-links li:nth-child(n+7){display:none}
.nav-links a{font-size:.67rem;font-weight:400;letter-spacing:.12em;text-transform:uppercase;color:var(--w6);text-decoration:none;transition:color .3s;white-space:nowrap}
.nav-links a:hover{color:var(--w)}
.nav-right{display:flex;align-items:center;gap:.75rem;flex-shrink:0}
.nav-tel{font-size:.7rem;font-weight:500;color:var(--w6);text-decoration:none;transition:color .3s;white-space:nowrap}
.nav-tel:hover{color:var(--gold)}
.nav-est{display:inline-flex;align-items:center;gap:.5rem;background:var(--gold);color:#080808;font-size:.66rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:.58rem 1.1rem;border-radius:100px;text-decoration:none;transition:transform .4s var(--ease),background-color .4s var(--ease),border-color .4s var(--ease),color .4s var(--ease),box-shadow .4s var(--ease);white-space:nowrap;border:none;cursor:pointer;font-family:'Outfit',sans-serif}
.nav-est:hover{background:var(--gold2);transform:translateY(-1px)}
.nav-est .arr{width:1.35rem;height:1.35rem;border-radius:50%;background:rgba(0,0,0,.16);display:flex;align-items:center;justify-content:center;font-size:.68rem;flex-shrink:0}
.hbg{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:.3rem;flex-shrink:0}
.hbg span{display:block;width:20px;height:1.5px;background:var(--w);border-radius:2px;transition:transform .4s var(--ease),background-color .4s var(--ease),border-color .4s var(--ease),color .4s var(--ease),box-shadow .4s var(--ease)}
.hbg.open span:nth-child(1){transform:rotate(45deg) translate(4.5px,4.5px)}
.hbg.open span:nth-child(2){opacity:0;transform:scaleX(0)}
.hbg.open span:nth-child(3){transform:rotate(-45deg) translate(4.5px,-4.5px)}

/* === MOBILE MENU === */
#igc-mob{position:fixed;inset:0;z-index:8999;background:rgba(8,8,8,.97);backdrop-filter:blur(40px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2.2rem;opacity:0;pointer-events:none;transition:opacity .45s var(--ease)}
#igc-mob.open{opacity:1;pointer-events:all}
#igc-mob a{font-family:'Cormorant Garamond',serif;font-size:2.1rem;font-weight:500;text-decoration:none;color:var(--w);letter-spacing:.04em;opacity:0;transform:translateY(1.5rem);transition:opacity .5s var(--ease),transform .5s var(--ease),color .3s}
#igc-mob.open a{opacity:1;transform:none}
#igc-mob.open a:nth-child(1){transition-delay:.06s}
#igc-mob.open a:nth-child(2){transition-delay:.11s}
#igc-mob.open a:nth-child(3){transition-delay:.16s}
#igc-mob.open a:nth-child(4){transition-delay:.21s}
#igc-mob.open a:nth-child(5){transition-delay:.26s}
#igc-mob.open a:nth-child(6){transition-delay:.31s}
#igc-mob.open a:nth-child(7){transition-delay:.36s}
#igc-mob a:hover{color:var(--gold)}

/* === STICKY BOTTOM BAR === */
#igc-sbar{position:fixed;bottom:0;left:0;right:0;z-index:8000;background:rgba(8,8,8,.97);border-top:1px solid var(--gbr);backdrop-filter:blur(20px);padding:.85rem 2rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;transform:translateY(100%);transition:transform .6s var(--ease)}
#igc-sbar.show{transform:translateY(0)}
.sbar-txt{font-size:.78rem;color:var(--w6);flex:1;min-width:0}
.sbar-txt strong{color:var(--w);font-weight:500}

/* === FLOAT CALL === */
#igc-call{position:fixed;bottom:1.75rem;right:1.75rem;z-index:8001;display:flex;align-items:center;gap:.65rem;background:var(--gold);color:#080808;font-size:.67rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.75rem 1.25rem .75rem .8rem;border-radius:100px;text-decoration:none;box-shadow:0 8px 40px rgba(200,169,110,.45);transition:transform .4s var(--ease),background-color .4s var(--ease),border-color .4s var(--ease),color .4s var(--ease),box-shadow .4s var(--ease)}
#igc-call:hover{background:var(--gold2);transform:translateY(-3px)}
.call-ring{width:1.9rem;height:1.9rem;border-radius:50%;background:rgba(0,0,0,.16);display:flex;align-items:center;justify-content:center;font-size:.9rem;position:relative;flex-shrink:0}
.call-ring::before{content:'';position:absolute;inset:-5px;border-radius:50%;border:2px solid var(--gold);animation:igcpulse 2s ease-out infinite}
@keyframes igcpulse{0%{transform:scale(1);opacity:.8}100%{transform:scale(1.75);opacity:0}}
.call-txt{white-space:nowrap}

/* === TRUST MARQUEE === */
.trust-bar{background:var(--s1);border-top:1px solid var(--br);border-bottom:1px solid var(--br);overflow:hidden;padding:1.3rem 0}
.trust-track{display:flex;width:max-content;animation:igcscroll 36s linear infinite}
@keyframes igcscroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.trust-item{display:flex;align-items:center;gap:.55rem;padding:0 2rem;white-space:nowrap;flex-shrink:0}
.ti-ico{font-size:.85rem;color:var(--gold);line-height:1}
.ti-txt{font-size:.65rem;font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:var(--w6)}
.ti-div{color:var(--br);font-size:1rem;flex-shrink:0;line-height:1;padding:0 .3rem}

/* === HERO === */
.hero{position:relative;min-height:100dvh;display:flex;align-items:flex-end;overflow:hidden}
.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;background-repeat:no-repeat}
.hero-grad{position:absolute;inset:0;background:linear-gradient(to top,#080808 0%,rgba(8,8,8,.68) 35%,rgba(8,8,8,.12) 100%)}
.hero-inner{position:relative;z-index:5;max-width:1200px;margin:0 auto;padding:0 2rem 7rem;width:100%}
.hero-ey{display:inline-flex;align-items:center;gap:.65rem;font-size:.6rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:var(--gold);margin-bottom:1.1rem;line-height:1}
.hero-ey::before{content:'';width:1.5rem;height:1px;background:var(--gold)}
.hero-h1{font-family:'Cormorant Garamond',serif;font-size:clamp(3rem,7.5vw,6.5rem);font-weight:600;line-height:1.03;letter-spacing:-.03em;max-width:860px;margin-bottom:1.25rem}
.hero-sub{font-size:.95rem;font-weight:300;color:var(--w6);max-width:540px;margin-bottom:2.5rem;line-height:1.85}
.hero-ctas{display:flex;gap:.85rem;flex-wrap:wrap;align-items:center}
.scroll-ind{display:flex;align-items:center;gap:.65rem;font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;color:var(--w3);margin-top:3.5rem;line-height:1}
.scroll-line{width:40px;height:1px;background:rgba(255,255,255,.1);position:relative;overflow:hidden}
.scroll-line::after{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:var(--gold);animation:igcsl 2.5s ease-in-out infinite}
@keyframes igcsl{0%{left:-100%}100%{left:100%}}

/* === STATS === */
.stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:3rem 0}
.sbox{background:var(--s2);border:1px solid var(--br);border-radius:1.25rem;padding:1.75rem;text-align:center;transition:border-color .4s}
.sbox:hover{border-color:var(--gbr)}
.snum{font-family:'Cormorant Garamond',serif;font-size:2.8rem;font-weight:700;color:var(--gold);line-height:1;letter-spacing:-.04em}
.slbl{font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:var(--w3);margin-top:.35rem}

/* === PROCESS === */
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-top:3rem;position:relative}
.process-grid::before{content:'';position:absolute;top:2rem;left:12.5%;right:12.5%;height:1px;background:linear-gradient(to right,transparent,var(--gbr),transparent)}
.pstep{text-align:center;padding:1rem}
.pnum{width:4rem;height:4rem;border-radius:50%;background:var(--gdim);border:1px solid var(--gbr);display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem;font-family:'Cormorant Garamond',serif;font-size:1.35rem;font-weight:700;color:var(--gold)}
.pname{font-family:'Cormorant Garamond',serif;font-size:1.05rem;font-weight:600;margin-bottom:.5rem}
.pdesc{font-size:.8rem;color:var(--w6);line-height:1.8}

/* === SERVICE CARDS === */
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.75rem}
.svc-card{background:var(--s2);border:1px solid var(--br);border-radius:1.3rem;padding:2rem;position:relative;overflow:hidden;transition:transform .5s var(--ease),background-color .5s var(--ease),border-color .5s var(--ease),color .5s var(--ease),box-shadow .5s var(--ease);display:block;text-decoration:none;color:inherit}
.svc-card::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,var(--gdim),transparent 60%);opacity:0;transition:opacity .5s var(--ease)}
.svc-card:hover{border-color:var(--gbr);transform:translateY(-5px)}.svc-card:hover::before{opacity:1}
.svc-ico{font-size:1.5rem;margin-bottom:1.1rem}
.svc-name{font-family:'Cormorant Garamond',serif;font-size:1.25rem;font-weight:600;margin-bottom:.5rem;color:var(--w)}
.svc-desc{font-size:.82rem;color:var(--w6);line-height:1.8}
.svc-link{display:inline-flex;align-items:center;gap:.4rem;margin-top:1.25rem;font-size:.65rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);transition:gap .35s var(--ease)}
.svc-card:hover .svc-link{gap:.7rem}

/* === REVIEWS === */
.rev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.75rem}
.rev-card{background:var(--s2);border:1px solid var(--br);border-radius:1.3rem;padding:1.85rem;transition:border-color .4s}
.rev-card:hover{border-color:var(--gbr)}
.rev-stars{color:var(--gold);font-size:.78rem;letter-spacing:.05em;margin-bottom:.9rem}
.rev-text{font-family:'Cormorant Garamond',serif;font-size:.98rem;font-style:italic;line-height:1.72;color:var(--w8);margin-bottom:1.25rem}
.rev-name{font-size:.82rem;font-weight:500;color:var(--w)}
.rev-loc{font-size:.66rem;color:var(--w3);margin-top:.12rem}

/* === AREAS === */
.areas-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.85rem;margin-top:2.5rem}
.area-card{background:var(--s2);border:1px solid var(--br);border-radius:1.1rem;padding:1.4rem 1.2rem;text-decoration:none;color:inherit;transition:transform .4s var(--ease),background-color .4s var(--ease),border-color .4s var(--ease),color .4s var(--ease),box-shadow .4s var(--ease);display:block}
.area-card:hover,.area-card.active{border-color:var(--gbr);transform:translateY(-3px)}
.area-card.active{background:var(--gdim)}
.area-name{font-family:'Cormorant Garamond',serif;font-size:1.1rem;font-weight:600;color:var(--w)}
.area-st{font-size:.58rem;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-top:.2rem}
.area-lnk{font-size:.65rem;color:var(--w3);margin-top:.5rem}

/* === FAQ === */
.faq-list{max-width:760px;margin-top:2.5rem}
.faq-item{border-bottom:1px solid var(--br)}
.faq-q{display:flex;align-items:center;justify-content:space-between;padding:1.35rem 0;cursor:pointer;gap:1rem;font-family:'Cormorant Garamond',serif;font-size:1.05rem;font-weight:500;user-select:none;transition:color .3s;outline:none}
.faq-q:hover,.faq-item.open .faq-q{color:var(--gold)}
.faq-ico{width:1.9rem;height:1.9rem;border-radius:50%;border:1px solid var(--br);display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:.85rem;flex-shrink:0;transition:transform .4s var(--ease),background-color .4s var(--ease),border-color .4s var(--ease),color .4s var(--ease),box-shadow .4s var(--ease)}
.faq-item.open .faq-ico{transform:rotate(45deg);background:var(--gdim);border-color:var(--gbr)}
.faq-a{font-size:.87rem;color:var(--w6);line-height:1.9;max-height:0;overflow:hidden;transition:max-height .55s var(--ease),padding .4s}
.faq-item.open .faq-a{max-height:600px;padding-bottom:1.6rem}

/* === FORM === */
.form-card{background:var(--s2);border:1px solid var(--br);border-radius:1.5rem;padding:2.5rem}
.form-title{font-family:'Cormorant Garamond',serif;font-size:1.6rem;font-weight:600;margin-bottom:.4rem;color:var(--w)}
.form-sub{font-size:.78rem;color:var(--w6);margin-bottom:1.75rem;line-height:1.7}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}
.fg{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.8rem}
.flbl{font-size:.58rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--w3);display:block}
.fi,.fs,.ft{background:var(--s3);border:1px solid var(--br);border-radius:.85rem;padding:.82rem .95rem;color:var(--w);font-family:'Outfit',sans-serif;font-size:.88rem;font-weight:300;outline:none;width:100%;-webkit-appearance:none;appearance:none;transition:border-color .3s,box-shadow .3s;display:block}
.fi::placeholder,.ft::placeholder{color:rgba(242,240,235,.18)}
.fi:focus,.fs:focus,.ft:focus{border-color:var(--gbr);box-shadow:0 0 0 3px rgba(200,169,110,.1)}
.fi:-webkit-autofill{-webkit-box-shadow:0 0 0 100px var(--s3) inset;-webkit-text-fill-color:var(--w)}
.fs{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23c8a96e' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .95rem center;padding-right:2.5rem}
.fs option{background:var(--s2);color:var(--w)}
.ft{resize:vertical;min-height:90px}
.btn-submit{display:flex;align-items:center;justify-content:center;gap:.7rem;width:100%;background:var(--gold);color:#080808;font-family:'Outfit',sans-serif;font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:.92rem;border-radius:100px;border:none;cursor:pointer;transition:transform .4s var(--ease),background-color .4s var(--ease),border-color .4s var(--ease),color .4s var(--ease),box-shadow .4s var(--ease);margin-top:.5rem;position:relative;overflow:hidden}
.btn-submit:hover:not(:disabled){background:var(--gold2);transform:translateY(-2px)}
.btn-submit:disabled{opacity:.7;cursor:not-allowed;transform:none}
.btn-submit.sent{background:#1a4a1a!important;color:#6ddb6d!important;cursor:default!important;transform:none!important}
.form-note{font-size:.62rem;color:var(--w3);text-align:center;margin-top:.65rem}

/* === CTA BANNER === */
.cta-sec{position:relative;overflow:hidden;background:var(--gold);padding:6rem 2rem;text-align:center}
.cta-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.14;mix-blend-mode:multiply}
.cta-h2{position:relative;z-index:2;font-family:'Cormorant Garamond',serif;font-size:clamp(2.2rem,4.5vw,3.8rem);font-weight:700;color:#080808;letter-spacing:-.025em;margin-bottom:.8rem}
.cta-sub{position:relative;z-index:2;font-size:.9rem;color:rgba(8,8,8,.6);margin-bottom:2.5rem}

/* === PAGE HERO === */
.ph{position:relative;min-height:55vh;display:flex;align-items:flex-end;overflow:hidden}
.ph-bg{position:absolute;inset:0;background-size:cover;background-position:center}
.ph-ov{position:absolute;inset:0;background:linear-gradient(to top,#080808 0%,rgba(8,8,8,.72) 32%,rgba(8,8,8,.15) 100%)}
.ph-inner{position:relative;z-index:5;max-width:1200px;margin:0 auto;padding:0 2rem 5rem;width:100%}
.crumb{display:flex;align-items:center;gap:.5rem;font-size:.6rem;letter-spacing:.15em;text-transform:uppercase;color:var(--w3);margin-bottom:1.2rem;flex-wrap:wrap}
.crumb a{color:var(--w3);text-decoration:none;transition:color .3s}.crumb a:hover{color:var(--gold)}
.crumb-sep{opacity:.4}
.ph-h1{font-size:clamp(2.5rem,5.5vw,4.8rem);max-width:760px;margin-bottom:1.1rem}
.ph-sub{font-size:.93rem;color:var(--w6);max-width:540px;margin-bottom:2.2rem;line-height:1.85;font-weight:300}
.ph-ctas{display:flex;gap:.85rem;flex-wrap:wrap;align-items:center}

/* === TWO-COL LAYOUT === */
.two-col{display:grid;grid-template-columns:1fr 340px;gap:4.5rem;align-items:start}
.content h2{font-family:'Cormorant Garamond',serif;font-size:1.75rem;font-weight:600;margin:2.5rem 0 .85rem;letter-spacing:-.015em;color:var(--w)}
.content h2:first-child{margin-top:0}
.content h3{font-family:'Cormorant Garamond',serif;font-size:1.25rem;color:var(--gold);margin:1.75rem 0 .6rem}
.content p{font-size:.9rem;color:var(--w6);line-height:1.9;margin-bottom:1.2rem}
.content ul{display:flex;flex-direction:column;gap:.55rem;margin:.6rem 0 1.2rem}
.content li{font-size:.88rem;color:var(--w6);display:flex;align-items:flex-start;gap:.85rem;line-height:1.8}
.content li::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--gold);flex-shrink:0;margin-top:.72rem}
.content strong{color:var(--w);font-weight:500}

/* === SIDEBAR === */
.sidebar{display:flex;flex-direction:column;gap:1.1rem;position:sticky;top:7rem}
.sb-card{background:var(--s2);border:1px solid var(--br);border-radius:1.3rem;padding:1.6rem;transition:border-color .4s}
.sb-card:hover{border-color:rgba(200,169,110,.15)}
.sb-t{font-family:'Cormorant Garamond',serif;font-size:1rem;font-weight:600;margin-bottom:.9rem;color:var(--w)}
.sb-list{list-style:none;display:flex;flex-direction:column;gap:.55rem;margin:0;padding:0}
.sb-list a{font-size:.8rem;color:var(--w6);text-decoration:none;display:flex;align-items:center;gap:.45rem;transition:color .4s;line-height:1.4}
.sb-list a::before{content:'';color:var(--gold);font-size:.65rem;flex-shrink:0}
.sb-list a:hover{color:var(--gold)}
.qbox{background:var(--gold);border-radius:1.1rem;padding:1.75rem;text-align:center}
.qbox-t{font-family:'Cormorant Garamond',serif;font-size:1.25rem;font-weight:700;color:#080808;margin-bottom:.4rem}
.qbox-s{font-size:.75rem;color:rgba(8,8,8,.65);line-height:1.6;margin-bottom:1.25rem}
.btn-qb{display:block;background:#080808;color:var(--gold);font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:.8rem;border-radius:100px;text-decoration:none;text-align:center;transition:transform .4s var(--ease),background-color .4s var(--ease),border-color .4s var(--ease),color .4s var(--ease),box-shadow .4s var(--ease)}
.btn-qb:hover{background:#1c1c1c}
.sb-phone{text-align:center;padding:.75rem 0 0}
.sb-phone a{font-family:'Cormorant Garamond',serif;font-size:1.45rem;font-weight:600;color:var(--gold);text-decoration:none;display:block;margin-bottom:.2rem}
.sb-phone small{font-size:.62rem;letter-spacing:.15em;text-transform:uppercase;color:var(--w3)}

/* === BLOG === */
.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.75rem;margin-top:3rem}
.blog-card{background:var(--s2);border:1px solid var(--br);border-radius:1.3rem;overflow:hidden;transition:transform .5s var(--ease),background-color .5s var(--ease),border-color .5s var(--ease),color .5s var(--ease),box-shadow .5s var(--ease);display:block;text-decoration:none;color:inherit}
.blog-card:hover{border-color:var(--gbr);transform:translateY(-5px)}
.blog-img{aspect-ratio:16/9;overflow:hidden}
.blog-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.blog-card:hover .blog-img img{transform:scale(1.05)}
.blog-body{padding:1.75rem}
.blog-meta{display:flex;align-items:center;gap:.85rem;margin-bottom:.85rem}
.blog-tag{font-size:.58rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);background:var(--gdim);padding:.25rem .65rem;border-radius:100px;border:1px solid rgba(200,169,110,.2)}
.blog-date{font-size:.66rem;color:var(--w3)}
.blog-card-title{font-family:'Cormorant Garamond',serif;font-size:1.2rem;font-weight:600;line-height:1.3;margin-bottom:.65rem;color:var(--w);transition:color .3s}
.blog-card:hover .blog-card-title{color:var(--gold)}
.blog-desc{font-size:.8rem;color:var(--w6);line-height:1.8;margin-bottom:1.25rem}
.blog-more{font-size:.65rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}

/* === ARTICLE === */
.art-body{max-width:780px;margin:0 auto}
.art-body h2{font-family:'Cormorant Garamond',serif;font-size:1.75rem;font-weight:600;margin:2.75rem 0 .9rem;letter-spacing:-.015em;color:var(--w)}
.art-body h2:first-child{margin-top:0}
.art-body p{font-size:.92rem;color:var(--w6);line-height:1.95;margin-bottom:1.2rem}
.art-body ul{display:flex;flex-direction:column;gap:.6rem;margin:.75rem 0 1.3rem}
.art-body li{font-size:.9rem;color:var(--w6);display:flex;align-items:flex-start;gap:.85rem;line-height:1.8}
.art-body li::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--gold);flex-shrink:0;margin-top:.72rem}
.art-body strong{color:var(--w);font-weight:500}
.art-cta{background:var(--gold);border-radius:1.3rem;padding:2.5rem;text-align:center;margin:3.5rem 0}
.art-cta h3{font-family:'Cormorant Garamond',serif;font-size:1.75rem;color:#080808;margin-bottom:.5rem}
.art-cta p{font-size:.84rem;color:rgba(8,8,8,.65);margin-bottom:1.5rem}
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.75rem}
.rel-card{background:var(--s2);border:1px solid var(--br);border-radius:1rem;padding:1.4rem;text-decoration:none;color:inherit;transition:all .4s}
.rel-card:hover{border-color:var(--gbr);transform:translateY(-3px)}
.rel-tag{font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:.5rem}
.rel-title{font-size:.88rem;font-weight:500;line-height:1.4;color:var(--w)}

/* === FOOTER === */
footer{background:var(--s1);border-top:1px solid var(--br);padding:5.5rem 2rem 2.5rem}
.ft-wrap{max-width:1200px;margin:0 auto}
.ft-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;padding-bottom:3rem;border-bottom:1px solid var(--br)}
.ft-logo{font-family:'Cormorant Garamond',serif;font-size:1.2rem;font-weight:700;margin-bottom:.85rem;color:var(--w)}
.ft-logo span{color:var(--gold)}
.ft-about{font-size:.8rem;color:var(--w3);line-height:1.85;max-width:280px;margin-bottom:1.5rem}
.ft-row{display:flex;gap:.5rem;font-size:.78rem;margin-bottom:.45rem}
.ftl{color:var(--gold);font-weight:500;flex-shrink:0}
.ftv{color:var(--w3)}.ftv a{color:inherit;text-decoration:none;transition:color .3s}.ftv a:hover{color:var(--w6)}
.ft-col-title{font-size:.58rem;letter-spacing:.25em;text-transform:uppercase;color:var(--gold);margin-bottom:1.2rem}
.ft-nav{list-style:none;display:flex;flex-direction:column;gap:.6rem;margin:0;padding:0}
.ft-nav a{font-size:.8rem;color:var(--w3);text-decoration:none;transition:color .3s}
.ft-nav a:hover{color:var(--w6)}
.ft-bottom{padding-top:1.75rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.85rem}
.ft-copy{font-size:.65rem;color:rgba(242,240,235,.2)}
.ft-legal{display:flex;gap:1.25rem}
.ft-legal a{font-size:.65rem;color:rgba(242,240,235,.2);text-decoration:none;transition:color .3s}
.ft-legal a:hover{color:var(--w3)}

/* === RESPONSIVE === */
@media(max-width:1300px){.nav-links,.nav-tel{display:none!important}.hbg{display:flex!important}}
@media(max-width:1080px){.two-col{grid-template-columns:1fr;gap:3rem}.sidebar{position:static;flex-direction:row;flex-wrap:wrap}.sidebar>*{flex:1 1 250px}.svc-grid{grid-template-columns:1fr 1fr}.areas-grid{grid-template-columns:repeat(3,1fr)}.ft-top{grid-template-columns:1fr 1fr;gap:2.5rem}.rev-grid{grid-template-columns:1fr 1fr}.stat-row{grid-template-columns:repeat(2,1fr)}.process-grid{grid-template-columns:repeat(2,1fr)}.process-grid::before{display:none}.related-grid{grid-template-columns:1fr 1fr}}
@media(max-width:768px){.nav-links,.nav-tel{display:none!important}.hbg{display:flex!important}.hero-h1{font-size:clamp(2.5rem,9vw,3.5rem)}.hero-inner{padding:0 1.5rem 5rem}.ph-inner{padding:0 1.5rem 4rem}.ph-h1{font-size:clamp(2rem,8vw,3rem)}.wrap{padding:0 1.5rem}section.sec{padding:5rem 0}.svc-grid,.rev-grid,.related-grid{grid-template-columns:1fr}.areas-grid{grid-template-columns:1fr 1fr}.ft-top{grid-template-columns:1fr}.ft-bottom{flex-direction:column;align-items:flex-start}.ph-ctas,.hero-ctas{flex-direction:column;align-items:flex-start}.frow{grid-template-columns:1fr}.stat-row{grid-template-columns:1fr 1fr}.process-grid{grid-template-columns:1fr 1fr}#igc-sbar{padding:.75rem 1.25rem}.sbar-txt{font-size:.72rem}.call-txt{display:none}}
@media(max-width:480px){.areas-grid{grid-template-columns:1fr 1fr}.stat-row{grid-template-columns:1fr 1fr}.blog-grid{grid-template-columns:1fr}}

.img-sec{padding:6rem 0}.img-sec .wrap{max-width:1200px;margin:0 auto;padding:0 2rem}
.before-after{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:2.5rem;border-radius:1.5rem;overflow:hidden}
.ba-side{position:relative;aspect-ratio:4/3;overflow:hidden}
.ba-side img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.32,.72,0,1)}
.ba-side:hover img{transform:scale(1.04)}
.ba-label{position:absolute;top:1rem;left:1rem;background:rgba(8,8,8,.82);color:#f2f0eb;font-size:.6rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;padding:.35rem .75rem;border-radius:100px;backdrop-filter:blur(10px)}
.ba-label.after{background:rgba(200,169,110,.9);color:#080808}
.ph3-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.5rem}
.ph3-item{border-radius:1.25rem;overflow:hidden;aspect-ratio:4/3}
.ph3-item img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.32,.72,0,1)}
.ph3-item:hover img{transform:scale(1.05)}
.img2col{display:grid;grid-template-columns:1.1fr 1fr;gap:4rem;align-items:center}
.img2col.rev{grid-template-columns:1fr 1.1fr}
.img2col .img-wrap{border-radius:1.3rem;overflow:hidden;aspect-ratio:4/3}
.img2col .img-wrap img{width:100%;height:100%;object-fit:cover}
.img2col .txt .ey{display:inline-flex;align-items:center;gap:.6rem;font-size:.6rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:#c8a96e;margin-bottom:1rem}
.img2col .txt .ey::before{content:'';width:1.5rem;height:1px;background:#c8a96e}
.img2col .txt h2{font-family:'Cormorant Garamond',serif;font-size:clamp(1.75rem,3vw,2.75rem);font-weight:600;line-height:1.15;letter-spacing:-.02em;margin-bottom:1rem}
.img2col .txt h2 em{font-style:italic;color:#c8a96e}
.img2col .txt p{font-size:.9rem;color:rgba(242,240,235,.6);line-height:1.9;margin-bottom:1.4rem}
.overhead-texture{border-radius:1.5rem;overflow:hidden;margin-top:2rem;aspect-ratio:21/9}
.overhead-texture img{width:100%;height:100%;object-fit:cover}
@media(max-width:768px){.before-after{grid-template-columns:1fr}.ph3-grid{grid-template-columns:1fr 1fr}.img2col,.img2col.rev{grid-template-columns:1fr;gap:2.5rem}.overhead-texture{aspect-ratio:16/9}}
@media(max-width:480px){.ph3-grid{grid-template-columns:1fr}}
.jdg-credit{position:relative;z-index:1;text-align:center;padding:2rem 1.5rem;margin-bottom:3.5rem;background:linear-gradient(180deg,#0a0a0a,#000);border-top:1px solid var(--gbr)}.jdg-credit-label{font-size:.62rem;font-weight:600;letter-spacing:.28em;text-transform:uppercase;color:var(--w3);margin-bottom:.6rem}.jdg-credit a{display:inline-flex;align-items:center;gap:.6rem;font-family:'Cormorant Garamond',serif;font-size:1.35rem;font-weight:600;letter-spacing:.03em;color:var(--w8);text-decoration:none;transition:transform .35s var(--ease),background-color .35s var(--ease),border-color .35s var(--ease),color .35s var(--ease),box-shadow .35s var(--ease)}.jdg-credit a:hover{color:var(--gold);gap:.85rem}.jdg-credit a span{color:var(--gold);font-weight:700}.jdg-credit a .arr{font-size:1rem;transition:transform .35s var(--ease)}.jdg-credit a:hover .arr{transform:translateX(4px)}@media(max-width:768px){.jdg-credit{padding:1.6rem 1.25rem;margin-bottom:4.5rem}.jdg-credit a{font-size:1.1rem}}
