/* ==========================================================================
   Global Implant Review — design system
   Ink dominant · umber accent · parchment, rosewood & sage supporting · minimal shadows
   ========================================================================== */

:root{
	/* Palette: Umber Brown · Antique Parchment · Rosewood · Sage Olive · Ink Black */
	--gir-ink:#2C2725;
	--gir-ink-deep:#211D1B;
	--gir-umber:#8C6046;
	--gir-umber-dark:#704B36;
	--gir-parchment:#F1E4CC;
	--gir-parchment-light:#F7EFE1;
	--gir-rosewood:#8A4D40;
	--gir-rosewood-dark:#6C392B;
	--gir-rosewood-band:#7F4A41;
	--gir-umber-deep:#5E381C;
	--gir-sage:#798165;
	--gir-sage-dark:#5F6549;
	--gir-sage-light:#ECEEE5;
	--gir-white:#FFFFFF;
	--gir-surface:#FBF3E7;
	--gir-card:#FCF6EE;
	--gir-text:#4A3F3A;
	--gir-muted:#75685F;
	--gir-border:#EADCC8;
	--gir-font-head:"Manrope","DM Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
	--gir-font-body:"Inter","Open Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
	--gir-radius:6px;
	--gir-radius-s:4px;
	--gir-container:1240px;
	--gir-gutter:24px;
	--gir-section:96px;
	--gir-shadow:0 1px 2px rgba(44,39,37,.05),0 8px 24px -12px rgba(44,39,37,.14);
	--gir-ease:cubic-bezier(.2,.7,.2,1);
}

/* ---------- Reset / base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:150px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{margin:0;background:var(--gir-white);color:var(--gir-text);font-family:var(--gir-font-body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg,video{max-width:100%;height:auto;display:block}
a{color:var(--gir-umber-dark);text-decoration:none;text-underline-offset:3px}
a:hover{color:var(--gir-ink);text-decoration:underline}
h1,h2,h3,h4,h5,h6{font-family:var(--gir-font-head);color:var(--gir-ink);line-height:1.2;margin:0 0 .5em;font-weight:700;letter-spacing:-.015em}
p{margin:0 0 1em}
ul,ol{margin:0;padding:0}
button{font:inherit;cursor:pointer}
input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--gir-umber);outline-offset:2px;border-radius:2px}
::selection{background:var(--gir-parchment);color:var(--gir-ink)}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
.skip-link:focus{clip:auto;clip-path:none;height:auto;width:auto;z-index:1000;top:8px;left:8px;padding:12px 18px;background:var(--gir-ink);color:#fff;border-radius:var(--gir-radius)}
.gir-icon{flex:none;display:inline-block;vertical-align:middle}

.container{width:100%;max-width:var(--gir-container);margin:0 auto;padding:0 var(--gir-gutter)}
.container--narrow{max-width:808px}
.container--narrow-wide{max-width:1160px}
.gir-muted{color:var(--gir-muted)}
.gir-mt{margin-top:40px}
.gir-mt-s{margin-top:14px;display:inline-flex}
.gir-num{font-variant-numeric:tabular-nums;white-space:nowrap}

/* ---------- Typography helpers ---------- */
.gir-eyebrow{font-family:var(--gir-font-body);font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--gir-rosewood);margin:0 0 12px}
.gir-eyebrow--line{display:flex;align-items:center;gap:12px}
.gir-eyebrow--line::before{content:"";width:28px;height:2px;background:var(--gir-rosewood)}
.gir-link{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:14px;color:var(--gir-rosewood-dark)}
.gir-link .gir-icon{transition:transform .2s var(--gir-ease)}
.gir-link:hover .gir-icon{transform:translateX(3px)}
.gir-link--muted{color:var(--gir-muted);font-weight:500}
.gir-badge{display:inline-block;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--gir-rosewood);padding:4px 12px;border-radius:99px;margin-bottom:12px;position:relative;z-index:2;align-self:flex-start}
.gir-badge--sage{background:var(--gir-sage-dark)}
.gir-badge--umber{background:var(--gir-umber-deep)}
.gir-badge:hover{text-decoration:none;color:#fff;filter:brightness(1.12)}
.gir-note{display:flex;gap:8px;align-items:flex-start;font-size:14px;color:var(--gir-muted);margin:28px 0 0}
.gir-note .gir-icon{margin-top:3px;color:var(--gir-umber)}
.gir-hint{display:flex;gap:10px;align-items:center;padding:16px 18px;border:1px dashed var(--gir-umber);background:var(--gir-parchment);border-radius:var(--gir-radius);color:var(--gir-ink);font-size:14px}
.gir-figcaption{font-size:13px;color:var(--gir-muted);margin-top:12px}

/* ---------- Buttons ---------- */
.gir-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;border-radius:99px;border:1.5px solid transparent;font-weight:600;font-size:15px;line-height:1.2;transition:background .2s,border-color .2s,color .2s;white-space:nowrap}
.gir-btn:hover{text-decoration:none}
.gir-btn--primary{background:var(--gir-rosewood);color:#fff}
.gir-btn--primary:hover{background:var(--gir-rosewood-dark);color:#fff}
.gir-btn--outline{border-color:var(--gir-rosewood);color:var(--gir-rosewood-dark);background:transparent}
.gir-btn--outline:hover{background:var(--gir-rosewood);color:#fff}
.gir-btn--sage{background:var(--gir-sage-dark);color:#fff}
.gir-btn--sage:hover{background:#4C513A;color:#fff}
.gir-btn--lg{padding:15px 28px;font-size:16px}
.gir-btn--block{width:100%;margin-top:16px}
.gir-icon-btn{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:var(--gir-radius-s);border:1px solid var(--gir-border);background:#fff;color:var(--gir-ink);transition:border-color .2s,background .2s}
.gir-icon-btn:hover{border-color:var(--gir-umber);color:var(--gir-umber)}
.gir-masthead .gir-icon-btn{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.18);color:#F7EFE1;border-radius:99px}
.gir-masthead .gir-icon-btn:hover{background:rgba(255,255,255,.18);color:#fff;border-color:rgba(255,255,255,.3)}

/* ==========================================================================
   Header
   ========================================================================== */
.gir-header{background:#fff;z-index:100;position:relative}
.gir-header.is-sticky{position:sticky;top:-38px}
.admin-bar .gir-header.is-sticky{top:-6px}
@media (max-width:782px){.admin-bar .gir-header.is-sticky{top:-38px}}

.gir-topbar{background:#4D2D15;color:#E6D3BF;border-bottom:1px solid rgba(255,255,255,.08);font-size:12.5px;height:38px}
.gir-topbar__inner{display:flex;align-items:center;justify-content:space-between;height:100%;gap:24px}
.gir-topbar__labels{display:flex;align-items:center;gap:16px;margin:0;letter-spacing:.02em}
.gir-topbar__labels span{display:inline-flex;align-items:center;gap:7px}
.gir-topbar__labels .gir-icon{color:#D8B48F}
.gir-topbar__sep{width:1px;height:14px;background:rgba(255,255,255,.2)}
.gir-topbar__search{display:flex;align-items:center;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);border-radius:99px;height:28px;width:300px}
.gir-topbar__search input{flex:1;min-width:0;background:none;border:0;color:#fff;font-size:12.5px;padding:0 10px}
.gir-topbar__search input::placeholder{color:#D9BFA5}
.gir-topbar__search input:focus{outline:none}
.gir-topbar__search:focus-within{border-color:#D8B48F}
.gir-topbar__search button{background:none;border:0;color:#D2C6BB;padding:0 9px;height:100%;display:grid;place-items:center}

.gir-masthead{background:var(--gir-umber-deep)}
.gir-masthead__inner{display:flex;align-items:center;justify-content:space-between;height:78px;gap:24px}
.gir-logo{display:inline-flex;align-items:center;gap:12px;color:var(--gir-ink)}
.gir-logo:hover{text-decoration:none;color:var(--gir-ink)}
.gir-masthead .gir-logo,.gir-masthead .gir-logo:hover{color:#F7EFE1}
.gir-masthead .gir-logo__tag{color:#D9BFA5}
.gir-masthead .gir-logo__mark>rect:first-child{fill:#7A4A28}
.gir-logo__mark{width:40px;height:40px}
.gir-logo__text{display:flex;flex-direction:column;line-height:1.1}
.gir-logo__name{font-family:var(--gir-font-head);font-weight:800;font-size:21px;letter-spacing:-.02em}
.gir-logo__tag{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--gir-muted);margin-top:4px;font-weight:500}
.custom-logo{max-height:52px;width:auto}
.gir-masthead__actions{display:flex;align-items:center;gap:10px}
.gir-utility ul{list-style:none;display:flex;gap:4px;margin-right:6px}
.gir-utility a{display:block;padding:8px 12px;font-size:14px;font-weight:500;color:#F7EFE1;border-radius:99px}
.gir-utility a:hover{background:rgba(255,255,255,.1);text-decoration:none;color:#fff}
.gir-utility .current-menu-item a{color:#fff;background:rgba(255,255,255,.12)}
.gir-menu-toggle{display:none}
.gir-menu-toggle__close{display:none}

/* Primary nav */
.gir-nav{position:relative;background:#F7EFE1;border-bottom:1px solid var(--gir-border)}
.gir-nav__list{list-style:none;display:flex;align-items:stretch;justify-content:space-between;gap:2px;margin:0;padding:0}
.gir-nav__item{display:flex;align-items:center;position:static;flex:none}
.gir-nav__link{display:flex;align-items:center;height:52px;padding:0 8px;font-size:14px;font-weight:500;color:var(--gir-ink);white-space:nowrap;position:relative;background:none;border:0}
.gir-nav__link:hover{text-decoration:none;color:var(--gir-rosewood-dark)}
.gir-nav__link::after{content:"";position:absolute;left:8px;right:8px;bottom:-1px;height:2px;background:var(--gir-rosewood);transform:scaleX(0);transform-origin:left;transition:transform .2s var(--gir-ease)}
.gir-nav__item.is-active>.gir-nav__link{color:var(--gir-rosewood-dark);font-weight:600}
.gir-nav__item.is-active>.gir-nav__link::after,.gir-nav__item:hover>.gir-nav__link::after,.gir-nav__item.is-open>.gir-nav__link::after{transform:scaleX(1)}
.gir-nav__toggle{background:none;border:0;color:var(--gir-muted);width:18px;height:52px;padding:0;margin-left:-6px;display:grid;place-items:center}
.gir-nav__toggle .gir-icon{transition:transform .2s}
.gir-nav__item.is-open>.gir-nav__toggle .gir-icon{transform:rotate(180deg)}
.gir-nav__item.is-overflow{display:none}

/* Mega panel */
.gir-mega{position:absolute;left:0;right:0;top:100%;background:#FFFCF7;border-top:1px solid var(--gir-border);border-bottom:1px solid var(--gir-border);box-shadow:0 24px 40px -24px rgba(33,29,27,.25);visibility:hidden;opacity:0;transform:translateY(-4px);transition:opacity .16s,transform .16s,visibility 0s .16s;z-index:90}
@media (min-width:1101px) and (hover:hover){
	.gir-nav__item.has-mega:hover>.gir-mega{visibility:visible;opacity:1;transform:none;transition-delay:.08s}
}
.gir-nav__item.is-open>.gir-mega{visibility:visible;opacity:1;transform:none;transition-delay:0s}
.gir-mega__inner{display:grid;grid-template-columns:280px 1fr 260px;gap:48px;padding-top:32px;padding-bottom:36px}
.gir-mega__title{font-family:var(--gir-font-head);font-size:22px;font-weight:700;color:var(--gir-ink);margin:0 0 10px}
.gir-mega__desc{font-size:14px;color:var(--gir-muted);margin-bottom:16px}
.gir-mega__links{list-style:none;columns:2;column-gap:32px;align-self:start}
.gir-mega__links li{break-inside:avoid}
.gir-mega__links a{display:block;padding:9px 0;border-bottom:1px solid var(--gir-border);font-size:14.5px;color:var(--gir-ink);font-weight:500}
.gir-mega__links a:hover,.gir-mega__links .is-active>a{color:var(--gir-umber-dark);text-decoration:none}
.gir-mega__sub{list-style:none;padding-left:12px}
.gir-mega__card{display:block;color:var(--gir-ink);font-weight:600;font-size:14.5px;line-height:1.4}
.gir-mega__card img{border-radius:var(--gir-radius-s);margin-bottom:10px;aspect-ratio:3/2;object-fit:cover;width:100%}
.gir-mega__card:hover{color:var(--gir-umber-dark)}
.gir-mega__feature:empty{display:none}
.gir-more__list{columns:3}

/* Search overlay */
.gir-search-overlay{position:fixed;inset:0;z-index:999;background:rgba(33,29,27,.72);backdrop-filter:blur(3px);display:flex;align-items:flex-start;justify-content:center;padding-top:12vh}
.gir-search-overlay[hidden]{display:none}
.gir-search-overlay__panel{position:relative;background:#fff;max-width:820px;border-radius:var(--gir-radius);padding:40px 40px 32px}
.gir-search-close{position:absolute;top:16px;right:16px;border:0}
.gir-search-overlay__suggest{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:18px;font-size:13.5px;color:var(--gir-muted)}
.gir-search-overlay__suggest a{padding:5px 11px;border:1px solid var(--gir-border);border-radius:99px;color:var(--gir-ink)}
.gir-search-overlay__suggest a:hover{border-color:var(--gir-umber);text-decoration:none}
.gir-search-form{display:flex;align-items:center;gap:10px;border:1.5px solid var(--gir-border);border-radius:var(--gir-radius);padding:6px 6px 6px 14px;background:#fff}
.gir-search-form:focus-within{border-color:var(--gir-umber)}
.gir-search-form__icon{color:var(--gir-muted)}
.gir-search-form__input{flex:1;border:0;font-size:17px;padding:10px 4px;min-width:0;background:none}
.gir-search-form__input:focus{outline:none}
body.gir-locked{overflow:hidden}

/* ==========================================================================
   Sections
   ========================================================================== */
.gir-section{padding:var(--gir-section) 0}
.gir-bg--white{background:#FFFCF7}
.gir-bg--surface{background:var(--gir-surface)}
.gir-bg--teal{background:var(--gir-parchment)}
.gir-bg--navy{background:var(--gir-sage-dark);color:#E6E3D3}
.gir-bg--navy .gir-section__title,.gir-bg--navy h3,.gir-bg--navy h3 a{color:#fff}
.gir-bg--navy .gir-section__intro{color:#E6E3D3}
.gir-bg--navy .gir-eyebrow{color:#F1E4CC}
.gir-bg--navy .gir-link{color:#F7EFE1}
.gir-bg--hero{background:#fff}
.gir-section__head{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:48px}
.gir-section__title{font-size:clamp(26px,3vw,36px);font-weight:800;letter-spacing:-.02em;margin:0;max-width:820px}
.gir-section__intro{font-size:17px;color:var(--gir-muted);max-width:660px;margin:14px 0 0}
.gir-section__more{flex:none;padding-bottom:6px}
.gir-grid{display:grid;gap:28px;list-style:none}
.gir-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.gir-grid__full{grid-column:1/-1}
.gir-panel{background:#fff;border:1px solid var(--gir-border);border-radius:var(--gir-radius);padding:28px}
.gir-panel--info{border-top:3px solid var(--gir-sage)}
.gir-panel--warn{border-left:3px solid var(--gir-rosewood);background:#FBF3F1}
.gir-panel__link{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:12px 0;border-top:1px solid var(--gir-border);font-weight:600;color:var(--gir-ink);font-size:14.5px}
.gir-checklist{list-style:none}
.gir-checklist li{position:relative;padding:0 0 10px 28px;font-size:15px}
.gir-checklist li::before{content:"";position:absolute;left:0;top:5px;width:16px;height:16px;border-radius:50%;background:var(--gir-sage-light) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235C634D' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 4.5 4.5L19 7'/%3E%3C/svg%3E") center/10px no-repeat}

/* Stretched links for cards */
.gir-card,.gir-cat-card,.gir-brand-card,.gir-tech-tile,.gir-material-card,.gir-journey__card,.gir-risk-item,.gir-timeline__step{position:relative}
.gir-card__title a::after,.gir-cat-card__title a::after,.gir-brand-card__name a::after,.gir-tech-tile h3 a::after,.gir-material-card h3 a::after,.gir-journey__card h3 a::after,.gir-risk-item h3 a::after{content:"";position:absolute;inset:0;z-index:1}

/* ---------- Hero ---------- */
.gir-section--hero{padding:72px 0 104px;background:linear-gradient(100deg,#F3E7D7 0%,#F8EFE3 55%,#EFE0CC 100%);border-bottom:1px solid var(--gir-border)}
.gir-section--hero .gir-hero__pillars{border-top-color:#E3D2BC}
.gir-hero{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,1fr);gap:64px;align-items:center}
.gir-hero__title{font-size:clamp(34px,4.4vw,54px);line-height:1.08;font-weight:800;letter-spacing:-.03em;margin-bottom:22px}
.gir-hero__intro{font-size:19px;line-height:1.6;color:var(--gir-text);max-width:560px;margin-bottom:32px}
.gir-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:44px}
.gir-hero__pillars{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding-top:28px;border-top:1px solid var(--gir-border)}
.gir-hero__pillars li{display:flex;gap:10px;font-size:13px;color:var(--gir-muted);line-height:1.45}
.gir-hero__pillars .gir-icon{color:var(--gir-sage);margin-top:1px}
.gir-hero__pillars strong{display:block;color:var(--gir-ink);font-size:14px;margin-bottom:2px}
.gir-hero__visual{position:relative}
.gir-hero__visual .gir-illus,.gir-hero__img{border-radius:var(--gir-radius);border:1px solid var(--gir-border);width:100%;background:#fff}
.gir-hero__img{aspect-ratio:4/3;object-fit:cover}
.gir-hero__card{position:absolute;right:-16px;bottom:-28px;width:270px;background:#fff;border:1px solid var(--gir-border);border-left:3px solid var(--gir-rosewood);border-radius:var(--gir-radius);padding:18px 20px;box-shadow:var(--gir-shadow);font-size:13.5px;color:var(--gir-muted)}
.gir-hero__card p{margin:0}
.gir-hero__card .gir-eyebrow{margin-bottom:6px}
.gir-hero__card-title{font-family:var(--gir-font-head);font-weight:700;color:var(--gir-ink)!important;font-size:17px;margin-bottom:4px!important}

/* ---------- Category grid ---------- */
.gir-cat-grid{list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;border-top:1px solid var(--gir-border);border-left:1px solid var(--gir-border)}
.gir-cat-card{padding:28px 24px 24px;border-right:1px solid var(--gir-border);border-bottom:1px solid var(--gir-border);display:flex;flex-direction:column;transition:background .2s}
.gir-cat-card:hover{background:var(--gir-surface)}
.gir-cat-card__num{position:absolute;top:22px;right:20px;font-size:12px;font-weight:600;color:#AFA196;font-variant-numeric:tabular-nums}
.gir-cat-card__icon{width:48px;height:48px;display:grid;place-items:center;border-radius:var(--gir-radius-s);background:var(--gir-sage-dark);color:#F7EFE1;margin-bottom:20px}
.gir-cat-card__title{font-size:17px;margin-bottom:8px}
.gir-cat-card__title a{color:var(--gir-ink)}
.gir-cat-card__title a:hover{text-decoration:none}
.gir-cat-card:hover .gir-cat-card__title a{color:var(--gir-umber-dark)}
.gir-cat-card__desc{font-size:13.5px;color:var(--gir-muted);line-height:1.55;flex:1;margin-bottom:18px}
.gir-cat-card__foot{display:flex;justify-content:space-between;align-items:center;font-size:12.5px}
.gir-cat-card__foot .gir-link{font-size:13.5px}

/* ---------- Cards ---------- */
.gir-card{background:var(--gir-card);border:1px solid var(--gir-border);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;transition:border-color .2s,box-shadow .2s}
.gir-card:hover{border-color:#D6C8B5;box-shadow:var(--gir-shadow)}
.gir-card__media{display:block;aspect-ratio:16/10;background:var(--gir-surface);overflow:hidden}
.gir-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--gir-ease)}
.gir-card:hover .gir-card__media img{transform:scale(1.03)}
.gir-card__placeholder{display:grid;place-items:center;height:100%;color:#C4B39C;background:repeating-linear-gradient(135deg,var(--gir-surface) 0 12px,#F3EBDD 12px 24px)}
.gir-card__body{padding:22px 24px 24px;display:flex;flex-direction:column;flex:1}
.gir-card__title{font-size:19px;line-height:1.3;margin-bottom:10px}
.gir-card__title a{color:var(--gir-ink)}
.gir-card__title a:hover{text-decoration:none;color:var(--gir-umber-dark)}
.gir-card__excerpt{font-size:14.5px;color:var(--gir-muted);margin-bottom:16px}
.gir-card__meta{font-size:13px;color:var(--gir-muted);margin-top:auto;padding-top:4px}
.gir-card__meta+.gir-link{margin-top:14px;position:relative;z-index:2}
.gir-byline{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px}
.gir-byline__author{font-weight:600;color:var(--gir-ink);position:relative;z-index:2}
.gir-byline__sep{color:#AFA196}
.gir-card--compact .gir-card__title{font-size:16.5px}
.gir-card--compact .gir-card__media{aspect-ratio:16/8}
.gir-card--side .gir-card__media{aspect-ratio:16/8}
.gir-card--side .gir-card__title{font-size:18px}
.gir-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.gir-feature-grid .gir-card--lead,.gir-archive-grid .gir-card--lead{grid-column:span 2;grid-row:span 2}
.gir-card--lead .gir-card__media{aspect-ratio:auto;flex:1;min-height:300px}
.gir-card--lead .gir-card__title{font-size:clamp(22px,2.2vw,28px);letter-spacing:-.02em}
.gir-card--lead .gir-card__body{padding:28px 32px 30px;flex:none}

/* ---------- Split / topics ---------- */
.gir-split{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:56px;align-items:start}
.gir-diagram-panel{background:#fff;border:1px solid var(--gir-border);border-radius:var(--gir-radius);padding:20px}
.gir-tabs{display:inline-flex;background:var(--gir-surface);border-radius:var(--gir-radius-s);padding:4px;margin-bottom:16px}
.gir-tabs [role=tab]{border:0;background:none;padding:8px 18px;font-weight:600;font-size:14px;color:var(--gir-muted);border-radius:3px}
.gir-tabs [role=tab][aria-selected=true]{background:#fff;color:var(--gir-ink);box-shadow:0 1px 2px rgba(44,39,37,.1)}
.gir-topic-list{list-style:none;border-top:1px solid var(--gir-border)}
.gir-topic-list a{display:grid;grid-template-columns:44px 1fr 20px;gap:14px;align-items:center;padding:18px 4px;border-bottom:1px solid var(--gir-border);color:var(--gir-text)}
.gir-topic-list a:hover{text-decoration:none;background:var(--gir-surface)}
.gir-topic-list strong{display:block;font-family:var(--gir-font-head);color:var(--gir-ink);font-size:17px;margin-bottom:2px}
.gir-topic-list span span{font-size:14px;color:var(--gir-muted)}
.gir-topic-list__n{font-size:13px;font-weight:600;color:var(--gir-rosewood);font-variant-numeric:tabular-nums}
.gir-topic-list .gir-icon{color:var(--gir-umber);transition:transform .2s}
.gir-topic-list a:hover .gir-icon{transform:translateX(3px)}

/* ---------- Brands ---------- */
.gir-brand-grid{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.gir-brand-card{background:#fff;border:1px solid var(--gir-border);border-radius:var(--gir-radius);padding:28px;transition:border-color .2s,box-shadow .2s;display:flex;flex-direction:column}
.gir-brand-card:hover{border-color:var(--gir-umber);box-shadow:var(--gir-shadow)}
.gir-brand-card__logo{height:56px;display:flex;align-items:center;margin-bottom:20px}
.gir-brand-card__logo img{max-height:44px;width:auto;filter:grayscale(1);opacity:.85}
.gir-monogram{width:52px;height:52px;display:grid;place-items:center;border-radius:var(--gir-radius-s);background:var(--gir-ink);color:#fff;font-family:var(--gir-font-head);font-weight:800;font-size:22px}
.gir-brand-card__name{font-size:20px;margin-bottom:4px}
.gir-brand-card__name a{color:var(--gir-ink)}
.gir-brand-card__name a:hover{text-decoration:none}
.gir-brand-card__covers{list-style:none;margin:14px 0 20px;font-size:13.5px;color:var(--gir-muted);flex:1}
.gir-brand-card__covers li{padding:6px 0;border-bottom:1px dashed var(--gir-border)}
.gir-brand-card>p{font-size:14px;margin:4px 0 16px;flex:1}

/* ---------- Technology ---------- */
.gir-tech-grid{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.1);border-radius:var(--gir-radius);overflow:hidden}
.gir-tech-tile{background:var(--gir-sage-dark);padding:30px 26px;transition:background .2s}
.gir-tech-tile:hover{background:#565C42}
.gir-tech-tile__icon{width:50px;height:50px;border-radius:var(--gir-radius-s);display:grid;place-items:center;border:1px solid rgba(241,228,204,.35);color:#F1E4CC;margin-bottom:20px}
.gir-tech-tile h3{font-size:17px;margin-bottom:8px}
.gir-tech-tile h3 a:hover{text-decoration:none;color:#E9CBA8}
.gir-tech-tile p{font-size:14px;color:#E6E3D3;margin:0}
.gir-tech-latest{margin-top:40px;display:grid;grid-template-columns:200px 1fr;gap:24px;align-items:start}
.gir-tech-latest ul{list-style:none}
.gir-tech-latest li{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.1);font-size:15px}
.gir-tech-latest a{color:#fff;font-weight:500}
.gir-tech-latest span{color:#E6E3D3;font-size:13px;white-space:nowrap}

/* ---------- Materials ---------- */
.gir-material-card{background:#fff;border:1px solid var(--gir-border);border-radius:var(--gir-radius);padding:16px 16px 22px;transition:border-color .2s}
.gir-material-card:hover{border-color:var(--gir-umber)}
.gir-material-card .gir-illus{width:100%;margin-bottom:18px;border-radius:var(--gir-radius-s)}
.gir-material-card>div{padding:0 8px}
.gir-material-card h3{font-size:17px;margin-bottom:6px}
.gir-material-card h3 a{color:var(--gir-ink)}
.gir-material-card h3 a:hover{text-decoration:none;color:var(--gir-umber-dark)}
.gir-material-card p{font-size:14px;color:var(--gir-muted);margin:0}

/* ---------- Timeline ---------- */
.gir-timeline{list-style:none;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:20px;position:relative}
.gir-timeline::before{content:"";position:absolute;top:20px;left:20px;right:calc(100% / 7);height:2px;background:repeating-linear-gradient(90deg,var(--gir-umber) 0 6px,transparent 6px 12px);opacity:.5}
.gir-timeline__dot{position:relative;width:42px;height:42px;border-radius:50%;background:#fff;border:2px solid var(--gir-umber);color:var(--gir-umber-dark);display:grid;place-items:center;font-family:var(--gir-font-head);font-weight:800;margin-bottom:18px}
.gir-timeline__step:hover .gir-timeline__dot{background:var(--gir-umber);color:#fff}
.gir-timeline h3{font-size:15.5px;margin-bottom:6px}
.gir-timeline h3 a{color:var(--gir-ink)}
.gir-timeline p{font-size:13.5px;color:var(--gir-muted);margin:0}

/* ---------- Risks ---------- */
.gir-risk-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:40px;align-items:start}
.gir-risk-grid{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--gir-border)}
.gir-risk-item{display:flex;gap:16px;padding:24px 20px 24px 0;border-bottom:1px solid var(--gir-border)}
.gir-risk-item:nth-child(even){padding-left:20px;border-left:1px solid var(--gir-border)}
.gir-risk-item>.gir-icon{color:var(--gir-sage);margin-top:2px}
.gir-risk-item h3{font-size:17px;margin-bottom:4px}
.gir-risk-item h3 a{color:var(--gir-ink)}
.gir-risk-item:hover h3 a{color:var(--gir-umber-dark);text-decoration:none}
.gir-risk-item p{font-size:14px;color:var(--gir-muted);margin:0}

/* ---------- Costs ---------- */
.gir-cost-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:40px;align-items:start}
.gir-cost-links{list-style:none;background:#fff;border:1px solid var(--gir-border);border-radius:var(--gir-radius)}
.gir-cost-links li+li{border-top:1px solid var(--gir-border)}
.gir-cost-links a{display:grid;grid-template-columns:1fr 20px;column-gap:12px;padding:18px 22px;color:var(--gir-text)}
.gir-cost-links a:hover{text-decoration:none;background:var(--gir-surface)}
.gir-cost-links strong{color:var(--gir-ink);font-family:var(--gir-font-head);font-size:16px}
.gir-cost-links span{grid-column:1;font-size:13.5px;color:var(--gir-muted)}
.gir-cost-links .gir-icon{grid-column:2;grid-row:1/3;align-self:center;color:var(--gir-umber)}
.gir-cost-data>.gir-link{margin-top:16px}

/* Tables */
.gir-table-wrap{overflow-x:auto;border:1px solid var(--gir-border);border-radius:var(--gir-radius);background:#fff}
.gir-table{width:100%;border-collapse:collapse;font-size:14px}
.gir-table th{text-align:left;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--gir-muted);font-weight:600;background:var(--gir-surface);padding:12px 16px;border-bottom:1px solid var(--gir-border)}
.gir-table td{padding:14px 16px;border-bottom:1px solid var(--gir-border);vertical-align:top}
.gir-table tr:last-child td{border-bottom:0}
.gir-table-note{font-size:12.5px;color:var(--gir-muted);margin-top:10px}

/* ---------- Research ---------- */
.gir-evidence-key{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:-24px 0 28px}
.gir-evidence{display:inline-block;font-size:11.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:4px 9px;border-radius:var(--gir-radius-s);white-space:nowrap}
.gir-evidence--review{background:var(--gir-ink);color:#fff}
.gir-evidence--peer{background:var(--gir-sage-dark);color:#fff}
.gir-evidence--guideline{background:#F4E6E2;color:#7E463E;box-shadow:inset 0 0 0 1px #E3C6BF}
.gir-evidence--educational{background:var(--gir-surface);color:var(--gir-muted);box-shadow:inset 0 0 0 1px var(--gir-border)}
.gir-research-list{border-top:1px solid var(--gir-border)}
.gir-research-row{display:grid;grid-template-columns:190px minmax(0,1fr) 200px;gap:28px;padding:26px 0;border-bottom:1px solid var(--gir-border)}
.gir-research-row__labels{display:flex;flex-direction:column;align-items:flex-start;gap:8px;font-size:13px}
.gir-research-row__title{font-size:18px;line-height:1.35;margin-bottom:6px}
.gir-research-row__title a{color:var(--gir-ink)}
.gir-research-row__meta{font-size:13.5px;color:var(--gir-muted);margin-bottom:8px}
.gir-research-row__summary{font-size:15px;margin:0}
.gir-research-row__links{display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.gir-research-list--compact .gir-research-row{grid-template-columns:150px minmax(0,1fr)}
.gir-research-list--compact .gir-research-row__links{grid-column:2}

/* ---------- Patient journey ---------- */
.gir-journey{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.gir-journey__card{background:#fff;border:1px solid var(--gir-border);border-radius:var(--gir-radius);padding:28px;transition:border-color .2s}
.gir-journey__card:hover{border-color:var(--gir-umber)}
.gir-journey__n{display:block;font-family:var(--gir-font-head);font-weight:800;font-size:34px;color:var(--gir-rosewood);opacity:.75;line-height:1;margin-bottom:16px}
.gir-journey__card h3{font-size:18px;margin-bottom:6px}
.gir-journey__card h3 a{color:var(--gir-ink)}
.gir-journey__card:hover h3 a{color:var(--gir-umber-dark);text-decoration:none}
.gir-journey__card p{font-size:14.5px;color:var(--gir-muted);margin:0}

/* ---------- Newsletter ---------- */
.gir-section--newsletter{background:var(--gir-rosewood-band);padding:56px 0;color:#F3E7D7}
.gir-newsletter{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:56px;align-items:center;color:#F3E7D7}
.gir-newsletter .gir-section__title{color:#fff;margin-bottom:12px}
.gir-newsletter p{margin:0;font-size:16.5px}
.gir-newsletter__icon{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:var(--gir-radius-s);background:rgba(255,255,255,.1);color:#D8B48F;margin-bottom:20px}
.gir-newsletter-form__row{display:flex;gap:8px}
.gir-newsletter-form input[type=email]{flex:1;min-width:0;padding:14px 20px;border-radius:99px;border:1.5px solid var(--gir-border);background:#fff;font-size:15px;color:var(--gir-ink)}
.gir-newsletter-form input[type=email]:focus{outline:none;border-color:var(--gir-umber)}
.gir-newsletter .gir-btn--primary,.gir-footer .gir-btn--primary{background:var(--gir-sage-dark)}
.gir-newsletter .gir-btn--primary:hover,.gir-footer .gir-btn--primary:hover{background:#4C513A}
.gir-newsletter .gir-consent a{color:#fff}
.gir-section--newsletter .gir-form-msg--ok{background:rgba(255,255,255,.14);color:#fff}
.gir-consent{display:flex;gap:10px;align-items:flex-start;font-size:12.5px;margin-top:14px;line-height:1.5;color:inherit;opacity:.85}
.gir-consent input{margin-top:3px;accent-color:var(--gir-umber)}
.gir-consent a{color:#E9CBA8}
.gir-form-msg{margin:14px 0 0;font-size:14px;padding:10px 14px;border-radius:var(--gir-radius-s)}
.gir-form-msg--ok{background:rgba(121,129,101,.28);color:#E6EADB}
.gir-form-msg--err{background:rgba(255,190,170,.15);color:#FFD9CF}
.gir-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* ==========================================================================
   Footer
   ========================================================================== */
.gir-footer{background:#241F1C;color:#C9BCB0;font-size:14.5px;padding:80px 0 0}
.gir-footer a{color:#E3D9CE}
.gir-footer a:hover{color:#fff}
.gir-footer__grid{display:grid;grid-template-columns:1.2fr 1.7fr .9fr 1.3fr;gap:48px;padding-bottom:48px;border-bottom:1px solid rgba(255,255,255,.1)}
.gir-logo--light,.gir-logo--light:hover{color:#fff}
.gir-logo--light .gir-logo__mark>rect:first-child{fill:#3A3330}
.gir-footer__about{margin:20px 0 22px;line-height:1.7}
.gir-footer__title{font-family:var(--gir-font-body);font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#D8B48F;margin-bottom:18px}
.gir-footer__menu{list-style:none}
.gir-footer__menu li{padding:5px 0}
.gir-footer__menu--2col{columns:2;column-gap:24px}
.gir-footer__menu--2col li{break-inside:avoid}
.gir-footer .gir-newsletter-form input[type=email]{border-color:rgba(255,255,255,.15);background:rgba(255,255,255,.06);border-radius:99px;color:#fff;padding:12px 14px;font-size:14px}
.gir-footer .gir-newsletter-form input::placeholder{color:#A0928A}
.gir-footer .gir-btn{padding:11px 16px;font-size:14px}
.gir-social{list-style:none;display:flex;gap:8px}
.gir-social a{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.3);border-radius:50%}
.gir-social a:hover{border-color:#D8B48F;color:#D8B48F}
.gir-footer__disclaimer{display:flex;gap:12px;padding:24px 0 0;font-size:13px;line-height:1.6}
.gir-footer__disclaimer p{margin:0}
.gir-footer__disclaimer strong{color:#E3D9CE}
.gir-footer__disclaimer .gir-icon{color:#D9A79C;margin-top:2px}
.gir-footer__bar{background:var(--gir-sage-dark);margin-top:40px;color:#F3E7D7}
.gir-footer__bar a{color:#F7EFE1}
.gir-footer__bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:18px;padding-bottom:18px;font-size:13px}
.gir-footer__bottom p{margin:0}
.gir-footer__legal{list-style:none;display:flex;gap:20px}

/* ==========================================================================
   Article / page
   ========================================================================== */
.gir-breadcrumbs{font-size:13px;margin-bottom:22px}
.gir-breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;color:var(--gir-muted)}
.gir-breadcrumbs li:not(:last-child)::after{content:"/";margin-left:6px;color:#CDBFAE}
.gir-breadcrumbs a{color:var(--gir-muted)}
.gir-breadcrumbs a:hover{color:var(--gir-umber-dark)}
.gir-breadcrumbs [aria-current]{color:var(--gir-ink);font-weight:500;display:inline-block;max-width:420px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom}

.gir-article__header{padding:48px 0 36px;border-bottom:1px solid var(--gir-border);background:linear-gradient(180deg,var(--gir-surface),#fff)}
.gir-article__title{font-size:clamp(30px,4vw,46px);font-weight:800;line-height:1.12;letter-spacing:-.025em;margin:4px 0 16px}
.gir-article__dek{font-size:20px;line-height:1.55;color:var(--gir-text);max-width:780px;margin-bottom:26px}
.gir-article__meta{display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px;font-size:14px;color:var(--gir-muted)}
.gir-article__meta>div:nth-child(2){display:flex;flex-direction:column;gap:2px}
.gir-avatar{border-radius:50%}
.gir-readtime{display:inline-flex;align-items:center;gap:5px;font-size:13px}
.gir-reviewed{display:flex;align-items:center;gap:10px;padding:8px 14px;background:var(--gir-sage-light);box-shadow:inset 0 0 0 1px #D9DDCC;border-radius:var(--gir-radius-s);color:var(--gir-ink);font-size:13.5px;margin-left:auto}
.gir-reviewed .gir-icon{color:var(--gir-sage-dark)}
.gir-article__hero{margin:36px auto 0}
.gir-article__hero img{width:100%;border-radius:var(--gir-radius);aspect-ratio:16/9;object-fit:cover}
.gir-article__layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:72px;padding-top:48px;padding-bottom:72px;max-width:1160px}
.gir-article__aside{position:relative}
.gir-article__aside>*{position:sticky;top:150px}
.gir-article__aside>*+*{margin-top:24px;position:static}

.gir-takeaways{background:var(--gir-parchment);border-left:3px solid var(--gir-umber);border-radius:0 var(--gir-radius) var(--gir-radius) 0;padding:24px 28px;margin-bottom:40px}
.gir-takeaways h2{font-size:14px;letter-spacing:.1em;text-transform:uppercase;font-family:var(--gir-font-body);font-weight:600;color:var(--gir-umber-dark);margin-bottom:12px}
.gir-takeaways ul{padding-left:20px}
.gir-takeaways li{margin-bottom:6px}
.gir-takeaways p{margin:0}
.gir-findings{margin-bottom:40px}
.gir-findings h2{font-size:22px}

.gir-prose{font-size:18px;line-height:1.78;color:var(--gir-text);max-width:720px}
.gir-prose>*{margin-top:0;margin-bottom:1.25em}
.gir-prose h2{font-size:28px;margin-top:2em;margin-bottom:.6em;scroll-margin-top:150px}
.gir-prose h3{font-size:22px;margin-top:1.7em;margin-bottom:.5em;scroll-margin-top:150px}
.gir-prose h4{font-size:18px;margin-top:1.5em}
.gir-prose a{color:var(--gir-umber-dark);text-decoration:underline;text-decoration-color:rgba(140,96,70,.35)}
.gir-prose a:hover{text-decoration-color:currentColor}
.gir-prose ul,.gir-prose ol{padding-left:1.4em}
.gir-prose li{margin-bottom:.4em}
.gir-prose li::marker{color:var(--gir-umber)}
.gir-prose blockquote{margin:2em 0;padding:4px 0 4px 24px;border-left:3px solid var(--gir-rosewood);font-family:var(--gir-font-head);font-size:21px;line-height:1.5;color:var(--gir-ink)}
.gir-prose figure{margin:2em 0}
.gir-prose figcaption,.gir-prose .wp-element-caption{font-size:13.5px;color:var(--gir-muted);margin-top:10px}
.gir-prose img{border-radius:var(--gir-radius)}
.gir-prose table{width:100%;border-collapse:collapse;font-size:15px}
.gir-prose th,.gir-prose td{border:1px solid var(--gir-border);padding:10px 14px;text-align:left;vertical-align:top}
.gir-prose th{background:var(--gir-surface);color:var(--gir-ink);font-weight:600}
.gir-prose .wp-block-table{overflow-x:auto}
.gir-prose hr{border:0;border-top:1px solid var(--gir-border);margin:2.5em 0}
.gir-prose code{font-size:.9em;background:var(--gir-surface);padding:2px 6px;border-radius:3px}
.gir-prose .alignwide{max-width:none}
.gir-evidence-box{border:1px solid var(--gir-border);border-top:3px solid var(--gir-ink);border-radius:var(--gir-radius);padding:24px 28px;background:#fff}
.gir-evidence-box__level{font-size:14px;color:var(--gir-muted)}

.gir-references{margin-top:56px;padding-top:28px;border-top:1px solid var(--gir-border);max-width:720px}
.gir-references h2{font-size:20px}
.gir-references ol{padding-left:22px;font-size:14px;color:var(--gir-muted);line-height:1.6}
.gir-references li{margin-bottom:8px;word-break:break-word}
.gir-disclaimer{display:flex;gap:12px;margin:40px 0 0;padding:18px 20px;background:var(--gir-surface);border-radius:var(--gir-radius);font-size:14px;color:var(--gir-muted);max-width:720px}
.gir-disclaimer p{margin:0}
.gir-disclaimer .gir-icon{color:var(--gir-rosewood);margin-top:2px}
.gir-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}
.gir-tags a,.gir-chip{display:inline-block;padding:7px 14px;border:1px solid var(--gir-border);border-radius:99px;font-size:13.5px;color:var(--gir-ink);background:#fff;font-weight:500}
.gir-tags a:hover,.gir-chip:hover{border-color:var(--gir-umber);color:var(--gir-umber-dark);text-decoration:none}
.gir-chip.is-active{background:var(--gir-rosewood);border-color:var(--gir-rosewood);color:#fff}
.gir-author-box{display:flex;gap:20px;margin-top:48px;padding:28px;border:1px solid var(--gir-border);border-radius:var(--gir-radius);max-width:720px}
.gir-author-box .gir-eyebrow{margin-bottom:4px}
.gir-author-box__name{font-family:var(--gir-font-head);font-weight:700;font-size:18px;margin-bottom:6px}
.gir-author-box__name a{color:var(--gir-ink)}
.gir-author-box p:last-child{margin:0;font-size:15px;color:var(--gir-muted)}

/* TOC */
.gir-toc{border-left:2px solid var(--gir-border);padding-left:18px}
.gir-toc[hidden]{display:none}
.gir-toc__title{font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--gir-muted);margin-bottom:12px}
.gir-toc ol{list-style:none}
.gir-toc li{margin:0}
.gir-toc a{display:block;padding:6px 0;font-size:14px;color:var(--gir-muted);line-height:1.4;position:relative}
.gir-toc a.is-current{color:var(--gir-ink);font-weight:600}
.gir-toc a.is-current::before{content:"";position:absolute;left:-20px;top:6px;bottom:6px;width:2px;background:var(--gir-umber)}
.gir-toc .gir-toc__h3 a{padding-left:12px;font-size:13.5px}
.gir-sidebar .widget{margin-bottom:28px;font-size:15px}
.gir-sidebar .widget__title{font-size:13px;letter-spacing:.1em;text-transform:uppercase;font-family:var(--gir-font-body);color:var(--gir-muted)}
.gir-study-card dl{margin:0 0 6px;font-size:14px}
.gir-study-card dt{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--gir-muted);font-weight:600;margin-top:12px}
.gir-study-card dd{margin:2px 0 0;color:var(--gir-ink);font-weight:500;word-break:break-word}
.gir-profile-block{margin-top:48px;max-width:720px}
.gir-profile-block h2{font-size:26px}
.gir-brand-profile__head{display:flex;justify-content:space-between;gap:32px;align-items:flex-end}
.gir-brand-profile__logo img{max-height:72px;width:auto}

/* Page + archive headers */
.gir-page-header,.gir-archive-header{padding:56px 0 44px;background:linear-gradient(180deg,var(--gir-surface),#fff);border-bottom:1px solid var(--gir-border)}
.gir-page-header__title,.gir-archive-header__title{font-size:clamp(30px,4vw,46px);font-weight:800;letter-spacing:-.025em;margin-bottom:12px}
.gir-page-header__intro,.gir-archive-header__desc{font-size:18px;color:var(--gir-muted);max-width:720px}
.gir-archive-header__desc p:last-child{margin-bottom:0}
.gir-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}
.gir-page .gir-prose{padding:48px 0 80px;max-width:none}
.gir-archive-body{padding-top:48px;padding-bottom:88px}
.gir-pagination{margin-top:56px}
.gir-pagination ul{list-style:none;display:flex;flex-wrap:wrap;gap:6px;justify-content:center}
.gir-pagination a,.gir-pagination span{display:grid;place-items:center;min-width:42px;height:42px;padding:0 12px;border:1px solid var(--gir-border);border-radius:var(--gir-radius-s);font-weight:600;font-size:14px;color:var(--gir-ink)}
.gir-pagination .current{background:var(--gir-rosewood);border-color:var(--gir-rosewood);color:#fff}
.gir-pagination a:hover{border-color:var(--gir-umber);text-decoration:none}
.gir-empty{text-align:center;max-width:620px;margin:0 auto;padding:40px 0}
.gir-empty .gir-chips{justify-content:center}
.gir-search-inline{max-width:640px;margin-top:20px}
.gir-search-results{max-width:820px}
.gir-search-result{padding:26px 0;border-bottom:1px solid var(--gir-border)}
.gir-search-result h2{font-size:21px;margin-bottom:8px}
.gir-search-result h2 a{color:var(--gir-ink)}
.gir-search-result .gir-badge{margin:0}
.gir-404{text-align:center}
.gir-404 .gir-search-form{max-width:560px;margin:28px auto 0}
.gir-404 .gir-chips{justify-content:center}
.gir-comments{padding:56px 0 72px}
.gir-comments__list{list-style:none}
.comment-respond input[type=text],.comment-respond input[type=email],.comment-respond input[type=url],.comment-respond textarea{width:100%;padding:12px;border:1px solid var(--gir-border);border-radius:var(--gir-radius-s)}
.gir-main--full>.elementor{width:100%}

/* WordPress core alignment & blocks */
.alignleft{float:left;margin:0 1.5em 1em 0}
.alignright{float:right;margin:0 0 1em 1.5em}
.aligncenter{margin-left:auto;margin-right:auto}
.wp-block-button__link{background:var(--gir-ink);border-radius:var(--gir-radius-s);font-weight:600}
.has-ink-color{color:var(--gir-ink)}.has-ink-background-color{background-color:var(--gir-ink)}
.has-umber-color{color:var(--gir-umber)}.has-umber-background-color{background-color:var(--gir-umber)}
.has-parchment-color{color:var(--gir-parchment)}.has-parchment-background-color{background-color:var(--gir-parchment)}
.has-rosewood-color{color:var(--gir-rosewood)}.has-rosewood-background-color{background-color:var(--gir-rosewood)}
.has-sage-color{color:var(--gir-sage)}.has-sage-background-color{background-color:var(--gir-sage)}
.has-surface-background-color{background-color:var(--gir-surface)}
.has-body-color{color:var(--gir-text)}.has-muted-color{color:var(--gir-muted)}
.wp-block-gir-section.alignfull,.gir-prose .wp-block-gir-section{max-width:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);width:100vw}

/* Elementor: theme sections inside Elementor containers are full-bleed already */
.elementor-widget-container>.gir-section .container{padding-left:var(--gir-gutter);padding-right:var(--gir-gutter)}

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width:1280px){
	.gir-cat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
	.gir-timeline{grid-template-columns:repeat(4,minmax(0,1fr));row-gap:36px}
	.gir-timeline::before{display:none}
	.gir-mega__inner{grid-template-columns:240px 1fr 220px;gap:32px}
}

@media (max-width:1100px){
	:root{--gir-section:72px}
	.gir-topbar__search{display:none}
	.gir-utility{display:none}
	.gir-menu-toggle{display:inline-grid}
	body.gir-nav-open .gir-menu-toggle__open{display:none}
	body.gir-nav-open .gir-menu-toggle__close{display:block}
	.gir-nav{display:none;position:fixed;left:0;right:0;bottom:0;top:var(--gir-nav-top,116px);overflow-y:auto;border-top:1px solid var(--gir-border);z-index:99;background:#F7EFE1}
	body.gir-nav-open .gir-nav{display:block}
	.gir-nav__inner{padding-top:8px;padding-bottom:40px}
	.gir-nav__list{flex-direction:column;align-items:stretch}
	.gir-nav__item{flex-wrap:wrap;border-bottom:1px solid var(--gir-border)}
	.gir-nav__item.is-overflow{display:flex}
	.gir-nav__more{display:none!important}
	.gir-nav__link{flex:1;height:54px;font-size:16px;padding:0 4px}
	.gir-nav__link::after{display:none}
	.gir-nav__toggle{width:48px;height:54px;margin:0;border-left:1px solid var(--gir-border)}
	.gir-mega{position:static;display:none;visibility:visible;opacity:1;transform:none;box-shadow:none;border:0;width:100%;transition:none}
	.gir-nav__item.is-open>.gir-mega{display:block}
	.gir-mega__inner{display:block;padding:0 0 16px}
	.gir-mega__intro,.gir-mega__feature{display:none}
	.gir-mega__links{columns:1}
	.gir-mega__links a{padding:11px 12px;border:0;font-size:15px;color:var(--gir-text)}
	.gir-hero{grid-template-columns:1fr;gap:48px}
	.gir-hero__card{right:12px;bottom:-24px}
	.gir-split,.gir-risk-layout,.gir-cost-layout{grid-template-columns:minmax(0,1fr)}
	.gir-tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
	.gir-cat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
	.gir-brand-grid,.gir-journey{grid-template-columns:repeat(2,minmax(0,1fr))}
	.gir-article__layout{grid-template-columns:1fr;gap:0}
	.gir-article__aside{order:-1}
	.gir-article__aside>*{position:static}
	.gir-toc{margin-bottom:32px}
	.gir-footer__grid{grid-template-columns:1fr 1fr}
	.gir-newsletter{grid-template-columns:1fr;gap:28px;padding:40px}
	.gir-research-row{grid-template-columns:150px minmax(0,1fr)}
	.gir-research-row__links{grid-column:2;flex-direction:row;flex-wrap:wrap;gap:18px}
	.gir-reviewed{margin-left:0}
}

@media (max-width:782px){
	:root{--gir-section:60px;--gir-gutter:20px}
	.gir-topbar__labels span:nth-child(3),.gir-topbar__labels .gir-topbar__sep{display:none}
	.gir-masthead__inner{height:68px}
	.gir-logo__tag{display:none}
	.gir-logo__name{font-size:18px}
	.gir-section__head{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:32px}
	.gir-section--hero{padding:44px 0 72px}
	.gir-hero__pillars{grid-template-columns:1fr;gap:14px}
	.gir-hero__card{position:relative;right:auto;bottom:auto;width:auto;margin:-28px 16px 0}
	.gir-grid--3,.gir-feature-grid,.gir-brand-grid,.gir-journey{grid-template-columns:1fr}
	.gir-feature-grid .gir-card--lead,.gir-archive-grid .gir-card--lead{grid-column:auto;grid-row:auto}
	.gir-card--lead .gir-card__media{min-height:0}
	.gir-cat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
	.gir-cat-card{padding:22px 18px}
	.gir-tech-grid,.gir-risk-grid{grid-template-columns:1fr}
	.gir-risk-item:nth-child(even){padding-left:0;border-left:0}
	.gir-timeline{grid-template-columns:1fr;gap:0}
	.gir-timeline__step{display:grid;grid-template-columns:42px 1fr;column-gap:18px;padding-bottom:22px}
	.gir-timeline__dot{grid-row:span 2;margin:0}
	.gir-tech-latest{grid-template-columns:1fr;gap:4px}
	.gir-research-row{grid-template-columns:1fr;gap:12px}
	.gir-research-row__labels{flex-direction:row;align-items:center}
	.gir-research-row__links{grid-column:auto}
	.gir-newsletter{padding:32px 24px}
	.gir-newsletter-form__row{flex-direction:column}
	.gir-footer__grid{grid-template-columns:1fr;gap:36px}
	.gir-footer__bottom{flex-direction:column;align-items:flex-start}
	.gir-article__dek{font-size:18px}
	.gir-prose{font-size:17px}
	.gir-prose h2{font-size:24px}
	.gir-search-overlay{padding:0}
	.gir-search-overlay__panel{border-radius:0;padding:56px 20px 24px}
	.gir-search-form .gir-btn{padding:10px 14px}
	.gir-brand-profile__head{flex-direction:column;align-items:flex-start}
}

@media (max-width:480px){
	.gir-cat-grid{grid-template-columns:1fr}
}

@media print{
	.gir-header,.gir-footer,.gir-article__aside,.gir-related,.gir-search-overlay,.gir-newsletter{display:none!important}
	.gir-article__layout{display:block}
	.gir-prose a::after{content:" (" attr(href) ")";font-size:.8em}
}
