/* Shared header + mega menu, independent of page-specific styles.
   Desktop (≥1024px): each section opens its panel on hover, click or keyboard.
   Mobile (<1024px): a native <details> drawer with one accordion per section. */
#site-header.gr-header{--gr-red:#9e201a;--gr-red-deep:#7a1813;--gr-ink:#171717;--gr-ink-2:#333;--gr-muted:#616161;--gr-line:#e7e7e7;position:sticky;top:0;z-index:60;background:#fff;color:var(--gr-ink);border-bottom:1px solid var(--gr-line);font-family:var(--font-body,'Inter',system-ui,sans-serif);}
.gr-header-row{max-width:1240px;min-height:76px;margin:auto;padding:0 24px;display:flex;align-items:stretch;gap:24px;}
.gr-brand{display:flex;align-items:center;gap:12px;flex-shrink:0;text-decoration:none;align-self:center;}
.gr-brand img{display:block;width:44px;height:44px;flex-shrink:0;}
.gr-brand-name{font:700 19px/1.15 var(--font-body,'Inter',system-ui,sans-serif);letter-spacing:-.02em;color:var(--gr-red);}
.gr-brand-sub{display:block;margin-top:2px;font-size:11px;font-weight:600;line-height:1.4;letter-spacing:.14em;color:#555;text-transform:uppercase;}

/* ---------- Desktop navigation ---------- */
.gr-nav{display:flex;margin-left:auto;}
.gr-nav-list{display:flex;align-items:stretch;gap:2px;list-style:none;margin:0;padding:0;}
.gr-nav-item{display:flex;align-items:stretch;}
.gr-nav-trigger,.gr-nav-link{position:relative;display:inline-flex;align-items:center;gap:6px;padding:0 12px;margin:0;border:0;background:none;font:600 15px/1 var(--font-body,'Inter',system-ui,sans-serif);letter-spacing:-.005em;color:var(--gr-ink-2);text-decoration:none;white-space:nowrap;cursor:pointer;}
.gr-nav-trigger::after,.gr-nav-link::after{content:"";position:absolute;left:12px;right:12px;bottom:-1px;height:2px;background:var(--gr-red);transform:scaleX(0);transform-origin:left;transition:transform .2s ease;}
.gr-nav-trigger:hover,.gr-nav-link:hover,.gr-nav-item.is-open>.gr-nav-trigger,.gr-nav-trigger.is-current,.gr-nav-link[aria-current="page"]{color:var(--gr-red);}
.gr-nav-trigger:hover::after,.gr-nav-link:hover::after,.gr-nav-item.is-open>.gr-nav-trigger::after,.gr-nav-trigger.is-current::after,.gr-nav-link[aria-current="page"]::after{transform:scaleX(1);}
.gr-chevron{width:12px;height:12px;flex-shrink:0;transition:transform .2s ease;}
.gr-nav-item.is-open .gr-chevron,.gr-acc[open]>summary .gr-chevron{transform:rotate(180deg);}

/* Panel: full width under the header. Hidden by default; shown on hover/focus without JS,
   or by .is-open once site-nav.js has enhanced the header. */
.gr-mega{position:absolute;left:0;right:0;top:100%;z-index:2;background:#fff;border-top:1px solid var(--gr-line);box-shadow:0 28px 48px -16px rgb(23 23 23 / .22);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .16s ease,transform .16s ease,visibility 0s linear .16s;}
.gr-header:not(.is-enhanced) .gr-nav-item:is(:hover,:focus-within)>.gr-mega,.gr-nav-item.is-open>.gr-mega{opacity:1;visibility:visible;transform:none;transition-delay:0s;}
.gr-mega-inner{max-width:1240px;margin:auto;padding:28px 24px 32px;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:40px;max-height:calc(100vh - 96px);max-height:calc(100dvh - 96px);overflow-y:auto;}
.gr-mega-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px 24px;align-content:start;}
.gr-mega-col.is-compact{min-width:0;}
#site-header .gr-mega-col h2{margin:0 0 6px;padding:0 12px;font:600 12px/1.5 var(--font-body,'Inter',system-ui,sans-serif);letter-spacing:.08em;text-transform:uppercase;color:#737373;}
.gr-mega-col ul{list-style:none;margin:0;padding:0;}
.gr-mega-col a{display:block;padding:9px 12px;border-radius:8px;text-decoration:none;transition:background-color .12s ease;}
.gr-mega-col.is-compact a{padding-block:7px;}
.gr-mega-col a:hover,.gr-mega-col a:focus-visible{background:#faf3f2;}
.gr-link-title{display:block;font:600 15px/1.35 var(--font-body,'Inter',system-ui,sans-serif);color:var(--gr-ink);letter-spacing:-.005em;}
.gr-link-desc{display:block;margin-top:2px;font:400 13.5px/1.45 var(--font-body,'Inter',system-ui,sans-serif);color:var(--gr-muted);}
.gr-mega-col a:hover .gr-link-title,.gr-mega-col a[aria-current="page"] .gr-link-title{color:var(--gr-red);}
.gr-mega-all{grid-column:1/-1;justify-self:start;margin:10px 12px 0;font:600 14.5px/1.4 var(--font-body,'Inter',system-ui,sans-serif);color:var(--gr-red);text-decoration:none;}
.gr-mega-all:hover{text-decoration:underline;text-underline-offset:4px;}

.gr-mega-feature{align-self:start;display:flex;flex-direction:column;gap:10px;padding:24px;border-radius:12px;background:var(--gr-red);color:#fff;}
.gr-mega-feature p{margin:0;}
.gr-mega-eyebrow{font:600 12px/1.5 var(--font-body,'Inter',system-ui,sans-serif);letter-spacing:.08em;text-transform:uppercase;color:rgb(255 255 255 / .78);}
.gr-mega-title{font:700 20px/1.25 var(--font-body,'Inter',system-ui,sans-serif);letter-spacing:-.018em;}
.gr-mega-text{font:400 14.5px/1.55 var(--font-body,'Inter',system-ui,sans-serif);color:rgb(255 255 255 / .9);}
.gr-mega-cta{align-self:flex-start;margin-top:6px;display:inline-flex;align-items:center;gap:6px;padding:10px 14px;border-radius:6px;background:#fff;color:var(--gr-red);font:600 14.5px/1.3 var(--font-body,'Inter',system-ui,sans-serif);text-decoration:none;}
.gr-mega-cta:hover{background:#f6eceb;}
.gr-mega-contact{background:#f5f5f5;color:var(--gr-ink);}
.gr-mega-contact .gr-mega-eyebrow{color:#737373;}
.gr-mega-contact ul{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:10px;font:400 14.5px/1.45 var(--font-body,'Inter',system-ui,sans-serif);color:var(--gr-ink-2);}
.gr-mega-contact li span{display:block;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#737373;}
.gr-mega-contact a{color:var(--gr-red);font-weight:600;text-decoration:none;overflow-wrap:anywhere;}
.gr-mega-contact a:hover{text-decoration:underline;text-underline-offset:3px;}

.gr-scrim{position:fixed;left:0;right:0;bottom:0;top:var(--gr-header-h,77px);z-index:-1;background:rgb(23 23 23 / .26);opacity:0;visibility:hidden;transition:opacity .16s ease,visibility 0s linear .16s;}
.gr-header.has-open .gr-scrim{opacity:1;visibility:visible;transition-delay:0s;}

/* ---------- Actions ---------- */
.gr-header-actions{display:flex;align-items:center;gap:16px;align-self:center;}
.gr-nav+.gr-header-actions{margin-left:8px;}
.gr-header-call{font:600 15px/1.4 var(--font-body,'Inter',system-ui,sans-serif);color:var(--gr-ink-2);white-space:nowrap;text-decoration:none;font-variant-numeric:tabular-nums;}
.gr-header-call:hover{color:var(--gr-red);}
.gr-header-visit{display:inline-flex;align-items:center;justify-content:center;padding:11px 16px;min-height:44px;border-radius:6px;background:var(--gr-red);color:#fff;font:600 15px/1.3 var(--font-body,'Inter',system-ui,sans-serif);text-decoration:none;white-space:nowrap;}
.gr-header-visit:hover{background:var(--gr-red-deep);color:#fff;}
.gr-header .gr-header-visit[aria-current="page"]{color:#fff;}

/* ---------- Mobile drawer ---------- */
.gr-menu{display:none;}
.gr-menu-toggle{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 12px;list-style:none;border:1px solid #dedede;border-radius:6px;font:600 15px/1.4 var(--font-body,'Inter',system-ui,sans-serif);cursor:pointer;user-select:none;}
.gr-menu-toggle::-webkit-details-marker{display:none;}
.gr-menu-toggle::marker{content:'';}
.gr-menu-icon{width:18px;height:12px;border-top:2px solid currentColor;border-bottom:2px solid currentColor;position:relative;}
.gr-menu-icon::after{content:'';position:absolute;left:0;right:0;top:3px;border-top:2px solid currentColor;}
.gr-menu[open] .gr-menu-toggle{background:var(--gr-red);border-color:var(--gr-red);color:#fff;}
.gr-menu-panel{position:fixed;left:0;right:0;bottom:0;top:var(--gr-header-h,77px);overflow-y:auto;overscroll-behavior:contain;background:#fff;border-top:1px solid var(--gr-line);padding:4px 20px 32px;}
.gr-menu-list{display:block;max-width:640px;margin:auto;}
.gr-acc>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;padding:0 4px;list-style:none;border-bottom:1px solid #eee;font:600 18px/1.3 var(--font-body,'Inter',system-ui,sans-serif);color:var(--gr-ink);cursor:pointer;}
.gr-acc>summary::-webkit-details-marker{display:none;}
.gr-acc>summary::marker{content:'';}
.gr-acc>summary .gr-chevron{width:16px;height:16px;color:var(--gr-red);}
.gr-acc-body{padding:8px 0 14px;border-bottom:1px solid #eee;}
.gr-acc-all{display:flex;align-items:center;gap:6px;min-height:44px;padding:0 4px 0 14px;font:600 16px/1.4 var(--font-body,'Inter',system-ui,sans-serif);color:var(--gr-red);text-decoration:none;}
.gr-acc-label{margin:14px 0 2px;padding:0 4px 0 14px;font:600 12px/1.5 var(--font-body,'Inter',system-ui,sans-serif);letter-spacing:.08em;text-transform:uppercase;color:#737373;}
.gr-acc ul{list-style:none;margin:0;padding:0;}
.gr-acc ul a{display:flex;align-items:center;min-height:44px;padding:0 4px 0 14px;font:400 16.5px/1.4 var(--font-body,'Inter',system-ui,sans-serif);color:var(--gr-ink-2);text-decoration:none;}
.gr-acc ul a:hover,.gr-acc ul a[aria-current="page"]{color:var(--gr-red);}
.gr-acc-link{display:flex;align-items:center;min-height:56px;padding:0 4px;border-bottom:1px solid #eee;font:600 18px/1.3 var(--font-body,'Inter',system-ui,sans-serif);color:var(--gr-ink);text-decoration:none;}
.gr-menu-contact{display:grid;gap:10px;max-width:640px;margin:24px auto 0;}
.gr-menu-contact a{display:flex;align-items:center;justify-content:center;min-height:48px;padding:0 14px;border:1px solid #dedede;border-radius:8px;font:600 16px/1.3 var(--font-body,'Inter',system-ui,sans-serif);color:var(--gr-red);text-decoration:none;text-align:center;overflow-wrap:anywhere;}
.gr-menu-contact a.gr-menu-cta{background:var(--gr-red);border-color:var(--gr-red);color:#fff;}
html.gr-lock,html.gr-lock body{overflow:hidden;}

.gr-header a:focus-visible,.gr-nav-trigger:focus-visible,.gr-menu-toggle:focus-visible,.gr-acc>summary:focus-visible{outline:3px solid var(--gr-red);outline-offset:-3px;border-radius:6px;}
.gr-header .gr-brand[aria-current="page"]{text-decoration:none;}

@media(max-width:1199px){.gr-header-call{display:none!important;}.gr-header-row{gap:16px;}.gr-nav-trigger,.gr-nav-link{padding:0 10px;}.gr-nav-trigger::after,.gr-nav-link::after{left:10px;right:10px;}}
@media(max-width:1023px){.gr-nav{display:none;}.gr-menu{display:block;}.gr-header-actions{margin-left:auto;}}
@media(max-width:519px){.gr-header-row{padding:0 16px;gap:12px;min-height:68px;}.gr-header-visit{display:none;}.gr-brand img{width:40px;height:40px;}.gr-brand-name{font-size:18px;}}
@media(prefers-reduced-motion:reduce){.gr-mega,.gr-scrim,.gr-chevron,.gr-nav-trigger::after,.gr-nav-link::after{transition:none;}}

/* ---------- Shared footer (scripts/sync-site-footer.js) ---------- */
.gr-footer{background:#171717;color:#b5b5b5;font-family:var(--font-body,'Inter',system-ui,sans-serif);font-size:15px;line-height:1.55;}
.gr-footer-inner{max-width:1240px;margin:auto;padding:64px 24px 32px;}
.gr-footer a{color:#e5e5e5;text-decoration:none;}
.gr-footer a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px;}
.gr-footer-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,3.4fr);gap:40px;}
.gr-footer-logo{display:inline-flex;align-items:center;gap:12px;}
.gr-footer-logo:hover{text-decoration:none!important;}
.gr-footer-logo img{width:44px;height:44px;border-radius:8px;background:#fff;padding:3px;}
.gr-footer-logo>span{font:700 19px/1.15 var(--font-body,'Inter',system-ui,sans-serif);letter-spacing:-.02em;color:#fff;}
.gr-footer-logo>span>span{display:block;margin-top:2px;font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#9a9a9a;}
.gr-footer-brand>p{margin:18px 0 0;color:#a3a3a3;max-width:34ch;}
.gr-footer-facts{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:8px;color:#d4d4d4;font-size:14.5px;}
.gr-footer-facts li{display:flex;gap:10px;align-items:flex-start;}
.gr-footer-facts li::before{content:"";flex-shrink:0;width:14px;height:14px;margin-top:4px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 1 14 3.2v4.3c0 3.6-2.5 6.3-6 7.5-3.5-1.2-6-3.9-6-7.5V3.2L8 1Z' fill='none' stroke='%23e0675f' stroke-width='1.5' stroke-linejoin='round'/%3E%3Cpath d='m5.4 8 1.8 1.8 3.4-3.6' fill='none' stroke='%23e0675f' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;}
.gr-footer a.gr-footer-cta{display:inline-flex;align-items:center;min-height:44px;margin-top:22px;padding:0 16px;border-radius:6px;background:#9e201a;color:#fff;font-weight:600;}
.gr-footer a.gr-footer-cta:hover{background:#b9261e;text-decoration:none;}
.gr-footer-cols{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:28px;}
.gr-footer h2{margin:0 0 14px;font:600 12px/1.5 var(--font-body,'Inter',system-ui,sans-serif);letter-spacing:.08em;text-transform:uppercase;color:#8a8a8a;}
.gr-footer-cols ul{list-style:none;margin:0;padding:0;display:grid;gap:9px;}
.gr-footer address{font-style:normal;display:grid;gap:12px;}
.gr-footer address p{margin:0;color:#d4d4d4;}
.gr-footer address span{display:block;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#8a8a8a;}
.gr-footer address a{font-weight:600;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;}
.gr-footer-legal{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:48px;padding-top:28px;border-top:1px solid #2e2e2e;font-size:13.5px;color:#8f8f8f;}
.gr-footer-legal p{margin:0;}
.gr-footer-legal strong{color:#c4c4c4;font-weight:600;}
.gr-footer-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;margin-top:28px;font-size:13.5px;color:#8f8f8f;}
.gr-footer-bottom p{margin:0;}
.gr-footer-bottom ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 20px;}
.gr-footer-bottom a{color:#b5b5b5;}
@media(max-width:1199px){.gr-footer-top{grid-template-columns:1fr;gap:40px;}.gr-footer-cols{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px;}}
@media(max-width:767px){.gr-footer-cols{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:639px){.gr-footer-inner{padding:48px 20px 96px;}.gr-footer-legal{grid-template-columns:1fr;}.gr-footer-cols{gap:28px 16px;}}

/* Mobile drawer: audience links first */
.gr-menu-segments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;padding:12px 0 8px;}
.gr-menu-segments a{display:flex;align-items:center;justify-content:center;min-height:52px;border-radius:10px;background:#fbeae8;color:var(--gr-red);font:600 16px/1.2 var(--font-body,'Inter',system-ui,sans-serif);text-decoration:none;text-align:center;}
.gr-menu-segments a[aria-current="page"]{background:var(--gr-red);color:#fff;}

/* WhatsApp quick options, opened from the floating button (behaviour in site-nav.js) */
.wa-menu{position:fixed;right:16px;bottom:84px;z-index:60;width:min(300px,calc(100vw - 32px));padding:14px;border-radius:14px;background:#fff;box-shadow:0 24px 60px -20px rgb(0 0 0 / .45),0 0 0 1px rgb(0 0 0 / .06);font-family:var(--font-body,'Inter',system-ui,sans-serif);animation:wa-menu-in .18s ease;}
.wa-menu[hidden]{display:none;}
.wa-menu-title{margin:2px 4px 10px;font-size:14px;font-weight:700;color:#171717;}
.wa-menu ul{list-style:none;margin:0;padding:0;display:grid;gap:6px;}
.wa-menu ul a{display:flex;align-items:center;gap:10px;min-height:46px;padding:10px 12px;border-radius:10px;background:#effaf3;color:#14532d;font-size:15px;font-weight:600;line-height:1.3;text-decoration:none;}
.wa-menu ul a::before{content:"";flex-shrink:0;width:18px;height:18px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%231faa57' d='M.057 24l1.687-6.163a11.867 11.867 0 0 1-1.587-5.946C.16 5.335 5.495 0 12.05 0a11.82 11.82 0 0 1 8.413 3.488 11.82 11.82 0 0 1 3.48 8.413c-.003 6.555-5.338 11.892-11.893 11.892a11.9 11.9 0 0 1-5.688-1.448L.057 24z'/%3E%3C/svg%3E") center/contain no-repeat;}
.wa-menu ul a:hover,.wa-menu ul a:focus-visible{background:#dff3e7;}
.wa-menu a:focus-visible{outline:3px solid rgb(31 170 87 / .4);outline-offset:2px;}
.wa-menu-diag{display:block;margin:10px 4px 2px;font-size:13.5px;font-weight:600;color:var(--gr-red,#9e201a);text-decoration:none;}
.wa-menu-diag:hover{text-decoration:underline;text-underline-offset:3px;}
@keyframes wa-menu-in{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:none;}}
@media(prefers-reduced-motion:reduce){.wa-menu{animation:none;}}
