:root{--navy:#0B1830;--navy2:#122440;--copper:#B7793E;--cream:#F5F0E8;--ink:#172033;--muted:#697386;--white:#fff;--line:#D9D2C7;--shadow:0 20px 55px rgba(12,24,48,.10);--radius:22px;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.62}img{max-width:100%;display:block}figure{margin:0}a{color:inherit;text-decoration:none}.container{width:min(var(--max),calc(100% - 40px));margin:auto}.topbar{position:sticky;top:0;z-index:40;background:rgba(11,24,48,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.09)}.nav{height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{display:flex;align-items:center;gap:14px;color:#fff}.logo-mark{font-family:Georgia,serif;font-size:34px;letter-spacing:.02em}.logo-rule{height:30px;width:2px;background:var(--copper)}.logo-sub{font-size:12px;letter-spacing:.06em;line-height:1.2;color:#dbe2ed}.navlinks{display:flex;gap:23px;align-items:center;color:#dce3ec;font-size:14px}.navlinks a:hover,.navlinks a.active{color:#fff}.nav-cta{padding:11px 16px;border:1px solid rgba(255,255,255,.28);border-radius:999px}.menu-btn{display:none;background:none;border:0;color:#fff;font-size:26px}.hero{min-height:680px;background:linear-gradient(90deg,rgba(11,24,48,.98) 0%,rgba(11,24,48,.91) 48%,rgba(11,24,48,.48) 100%),radial-gradient(circle at 82% 32%,rgba(183,121,62,.26),transparent 23%),linear-gradient(145deg,#0B1830,#203a59 55%,#6d6358);color:#fff;display:flex;align-items:center;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;right:-100px;bottom:-160px;width:540px;height:540px;border:1px solid rgba(255,255,255,.11);border-radius:50%;box-shadow:0 0 0 80px rgba(255,255,255,.025),0 0 0 160px rgba(255,255,255,.018)}.hero-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:70px;align-items:center;position:relative;z-index:2;padding:86px 0}.eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#d0a06e;font-weight:700;margin-bottom:20px}.hero h1,.page-hero h1{font-family:Georgia,serif;font-size:clamp(44px,6vw,76px);line-height:1.03;margin:0 0 24px;font-weight:500;letter-spacing:-.03em}.hero p{max-width:760px;color:#dce3ec;font-size:19px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 20px;border-radius:999px;font-weight:700;font-size:14px;border:1px solid transparent;transition:.2s}.btn-primary{background:var(--copper);color:#fff}.btn-primary:hover{transform:translateY(-2px);filter:brightness(1.06)}.btn-outline{border-color:rgba(255,255,255,.42);color:#fff}.btn-dark{background:var(--navy);color:#fff}.hero-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:var(--radius);padding:30px;box-shadow:var(--shadow)}.hero-stat{font-family:Georgia,serif;font-size:68px;color:#fff;line-height:1}.hero-card p{font-size:14px;color:#dce3ec}.copper-line{height:2px;width:64px;background:var(--copper);margin:18px 0}section{padding:92px 0}.section-alt{background:var(--cream)}.section-dark{background:var(--navy);color:#fff}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:42px}.section-head h2{font-family:Georgia,serif;font-size:clamp(34px,4vw,52px);line-height:1.1;margin:0;font-weight:500;letter-spacing:-.02em}.section-head p{max-width:570px;color:var(--muted);margin:0}.section-dark .section-head p{color:#cbd4e0}.kicker{text-transform:uppercase;color:var(--copper);font-size:12px;letter-spacing:.18em;font-weight:800;margin-bottom:10px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.card{background:#fff;border:1px solid #ece7de;border-radius:var(--radius);padding:28px;min-height:270px;box-shadow:0 14px 35px rgba(18,36,64,.06);display:flex;flex-direction:column}.card-number{font-family:Georgia,serif;font-size:46px;color:var(--copper);line-height:1;margin-bottom:36px}.card h3{font-family:Georgia,serif;font-size:26px;margin:0 0 12px}.card p{color:var(--muted);font-size:14px}.card a{margin-top:auto;font-weight:700;color:var(--copper);font-size:14px}.split{display:grid;grid-template-columns:1fr 1fr;gap:68px;align-items:center}.quote-box{border-left:3px solid var(--copper);padding:8px 0 8px 28px;font-family:Georgia,serif;font-size:30px;line-height:1.3}.list-clean{list-style:none;padding:0;margin:26px 0 0}.list-clean li{padding:13px 0;border-bottom:1px solid #e8e2d9}.list-clean li:before{content:"→";color:var(--copper);margin-right:12px}.timeline{display:grid;gap:14px}.milestone{display:grid;grid-template-columns:65px 1fr;gap:22px;padding:22px 0;border-bottom:1px solid rgba(255,255,255,.12)}.milestone .dot{width:48px;height:48px;border:1px solid rgba(183,121,62,.6);border-radius:50%;display:grid;place-items:center;color:var(--copper);font-family:Georgia,serif;font-size:22px}.milestone h3{margin:0 0 6px;font-family:Georgia,serif;font-size:24px}.milestone p{margin:0;color:#cbd4e0}.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:40px}.step{border-top:1px solid rgba(255,255,255,.18);padding-top:18px}.step strong{display:block;font-family:Georgia,serif;font-size:22px;margin-bottom:8px}.step span{font-size:13px;color:#cbd4e0}.step-num{color:var(--copper);font-weight:800;font-size:12px;letter-spacing:.14em}.trust-strip{padding:22px 0;background:#fff;border-top:1px solid #eee8df;border-bottom:1px solid #eee8df}.trust-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;text-align:center;font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:#556175;font-weight:800}.cta{background:radial-gradient(circle at 80% 10%,rgba(183,121,62,.25),transparent 24%),linear-gradient(135deg,#0b1830,#162945);color:#fff;border-radius:34px;padding:60px}.cta h2{font-family:Georgia,serif;font-size:clamp(38px,5vw,60px);margin:0 0 16px;font-weight:500}.cta p{color:#ced7e3;max-width:760px}.page-hero{background:linear-gradient(135deg,#0b1830,#152b4a);color:#fff;padding:110px 0 82px}.page-hero p{font-size:18px;color:#d5deea;max-width:790px}.breadcrumb{font-size:12px;color:#9eabba;margin-bottom:22px}.solutions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.solution-block{border:1px solid #e8e2d9;border-radius:var(--radius);padding:30px;background:#fff}.solution-block h2{font-family:Georgia,serif;font-size:34px;margin:0 0 8px}.solution-block ul{padding-left:18px;color:#4d596c}.solution-block li{margin:8px 0}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.article{border:1px solid #e8e2d9;border-radius:var(--radius);padding:26px;background:#fff}.article .tag{color:var(--copper);font-size:11px;text-transform:uppercase;letter-spacing:.14em;font-weight:800}.article h3{font-family:Georgia,serif;font-size:25px;margin:12px 0}.article p{color:var(--muted);font-size:14px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:13px;font-weight:700;margin-bottom:7px}input,textarea{width:100%;padding:14px 15px;border:1px solid #d9d4ca;border-radius:12px;font:inherit;background:#fff}textarea{min-height:150px;resize:vertical}.full{grid-column:1/-1}footer{background:#081426;color:#cbd4e0;padding:52px 0 28px}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:34px}footer h4{color:#fff;margin:0 0 14px}footer a{display:block;margin:7px 0;color:#cbd4e0}.footer-bottom{margin-top:38px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#8795a8}.badge-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.badge{padding:9px 12px;border-radius:999px;background:#f2ece4;color:#5d4a39;font-size:12px;font-weight:700}@media(max-width:900px){.navlinks{display:none;position:absolute;left:0;right:0;top:78px;background:#0b1830;padding:20px 24px;flex-direction:column;align-items:flex-start}.navlinks.open{display:flex}.menu-btn{display:block}.hero-grid,.split,.solutions-grid{grid-template-columns:1fr}.hero-grid{gap:30px}.hero{min-height:auto}.cards{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.trust-grid{grid-template-columns:1fr 1fr}.article-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.cards,.steps,.form-grid,.footer-grid{grid-template-columns:1fr}.section-head{align-items:flex-start;flex-direction:column}section{padding:66px 0}.cta{padding:38px 26px;border-radius:24px}.hero-grid{padding:65px 0}.logo-sub,.logo-rule{display:none}.trust-grid{grid-template-columns:1fr}}

/* GIR V1.1 */
.resource-card{position:relative;overflow:hidden}
.resource-card:before{content:"";position:absolute;left:0;top:0;right:0;height:3px;background:var(--copper)}
.resource-link{display:inline-flex;margin-top:18px;color:var(--copper);font-weight:800}
.resources-home .actions{margin-top:28px}
.floating-contact{position:fixed;right:24px;bottom:108px;z-index:60;display:flex;flex-direction:column;gap:12px}
.floating-contact a{min-width:126px;height:48px;padding:0 18px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 12px 28px rgba(0,0,0,.18);font-weight:800;font-size:13px;letter-spacing:.01em}
.float-mail{background:var(--navy);color:#fff}
.float-wa{background:#1f7a55;color:#fff}
.float-wa.is-hidden{display:none}
.wa-note{border-left:3px solid var(--copper);padding-left:16px;color:var(--muted)}
@media(max-width:620px){.floating-contact{right:14px;bottom:88px}.floating-contact a{min-width:unset;width:50px;height:50px;padding:0;font-size:0}.float-mail:before{content:"✉";font-size:20px}.float-wa:before{content:"WA";font-size:13px;font-weight:800}}


/* GIR V1.2 images */
.hero-visual,.feature-image,.mosaic-card img,.portrait-card img,.inline-visual img{
  width:100%; display:block; object-fit:cover;
}
.hero-visual-card{
  position:relative; min-height:440px; border-radius:26px; overflow:hidden;
  box-shadow:0 18px 42px rgba(6,18,40,.28);
  border:1px solid rgba(255,255,255,.14);
}
.hero-visual-card img{width:100%; height:100%; object-fit:cover; display:block;}
.hero-visual-card:after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(9,20,37,.04) 0%, rgba(9,20,37,.14) 44%, rgba(9,20,37,.58) 100%);
}
.hero-badge{
  position:absolute; left:22px; bottom:22px; z-index:2; background:rgba(11,24,48,.88);
  color:#fff; padding:18px 20px; border-radius:18px; max-width:290px; border:1px solid rgba(255,255,255,.12)
}
.hero-badge strong{display:block; color:#fff; font-size:14px}
.hero-badge span{display:block; color:#d5deea; font-size:13px; margin-top:6px}
.feature-grid{
  display:grid; grid-template-columns:1.08fr .92fr; gap:32px; align-items:center;
}
.feature-image{
  border-radius:24px; overflow:hidden; box-shadow:0 18px 45px rgba(18,36,64,.12);
  border:1px solid #e9e1d6; background:#fff;
}
.feature-image img{height:100%}
.feature-copy h2{font-family:Georgia,serif; font-size:clamp(32px,4vw,48px); line-height:1.12; margin:0 0 16px; font-weight:500}
.feature-copy p{color:var(--muted); margin:0 0 16px}
.feature-list{list-style:none; padding:0; margin:18px 0 0}
.feature-list li{padding:9px 0; border-bottom:1px solid #ece5db}
.feature-list li:before{content:"•"; color:var(--copper); margin-right:10px}
.mosaic-grid{
  display:grid; grid-template-columns:1.15fr .85fr; gap:18px; align-items:stretch;
}
.mosaic-card{
  position:relative; border-radius:22px; overflow:hidden; min-height:260px;
  box-shadow:0 16px 36px rgba(18,36,64,.12); border:1px solid #e9e1d6;
}
.mosaic-card img{height:100%}
.mosaic-card:after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(9,20,37,0.02) 0%, rgba(9,20,37,0.16) 46%, rgba(9,20,37,.78) 100%);
}
.mosaic-caption{
  position:absolute; left:18px; right:18px; bottom:18px; z-index:2; color:#fff;
}
.mosaic-caption strong{
  display:block; font-family:Georgia,serif; font-size:24px; line-height:1.12; margin-bottom:6px;
}
.mosaic-caption span{display:block; font-size:13px; color:#dce3ec}
.mosaic-stack{display:grid; gap:18px}
.portrait-card{
  border-radius:24px; overflow:hidden; background:#fff; border:1px solid #e9e1d6; box-shadow:0 16px 36px rgba(18,36,64,.12);
}
.portrait-card img{aspect-ratio:4/5}
.portrait-note{
  padding:18px 20px; background:#fff;
}
.portrait-note strong{display:block; font-family:Georgia,serif; font-size:24px}
.portrait-note span{display:block; color:var(--muted); font-size:14px; margin-top:4px}
.inline-visual{
  border-radius:24px; overflow:hidden; border:1px solid #e9e1d6; box-shadow:0 16px 36px rgba(18,36,64,.12);
}
.inline-visual img{aspect-ratio:16/10}
.contact-links{
  display:flex; flex-wrap:wrap; gap:14px; margin-top:20px;
}
.contact-chip{
  display:inline-flex; align-items:center; gap:8px; padding:11px 16px; border-radius:999px;
  background:#f4ede4; color:#5d4a39; font-size:13px; font-weight:700;
}
.contact-chip.dark{background:var(--navy); color:#fff}
@media(max-width:900px){
  .feature-grid,.mosaic-grid{grid-template-columns:1fr}
  .hero-visual-card{min-height:360px}
}

.feature-grid>*,.hero-grid>*{min-width:0}.feature-image img,.hero-visual-card img,.mosaic-card img,.portrait-card img,.inline-visual img{width:100%;height:100%;object-fit:cover}.feature-copy{position:relative;z-index:1}.feature-image{overflow:hidden}.feature-image img{aspect-ratio:4/3}.hero-visual-card img{aspect-ratio:4/5}
