@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:opsz,wght@9..144,500;9..144,600&display=swap");

:root { --ink:#1a293c; --muted:#536477; --line:#e0e7ee; --bg:#f6f8fa; --max:1180px; }
*, *::before, *::after { box-sizing:border-box; }
html { scroll-padding-top:7rem; }
body.theme-field-guide { --navy:var(--public-accent,var(--brand-accent,#0a1628)); --green:var(--brand-secondary,#00875a); --gold:#d3ab49; --accent:var(--green); --paper:#fff; --surface:#fff; margin:0; background:var(--bg); color:var(--ink); font-family:"DM Sans",system-ui,sans-serif; font-size:1rem; line-height:1.75; }
.theme-field-guide :is(h1,h2,h3,h4,p,figure,blockquote) { margin-block:0; }
.theme-field-guide :is(h1,h2,h3) { color:var(--navy); font-family:Fraunces,Georgia,serif; font-weight:600; letter-spacing:-.025em; line-height:1.2; text-wrap:pretty; }
.theme-field-guide h1 { font-size:clamp(2rem,3.6vw,3.2rem); max-width:24ch; }
.theme-field-guide h2 { font-size:clamp(1.5rem,2.3vw,2rem); }
.theme-field-guide h3 { font-size:1.18rem; line-height:1.4; }
.theme-field-guide p { color:var(--muted); }
.theme-field-guide a { color:var(--navy); text-underline-offset:.2em; }
.theme-field-guide img { max-width:100%; display:block; }
.theme-field-guide :is(a,button,summary,input,select,textarea):focus-visible { outline:3px solid #c99700; outline-offset:4px; }
.theme-field-guide :is(button,input,textarea,select) { font:inherit; }
.theme-field-guide .shell { width:100%; min-width:0; margin-inline:auto; }
.skip { position:absolute; inset-inline-start:1rem; top:-6rem; z-index:100; background:#fff; padding:.6rem 1rem; }
.skip:focus { top:1rem; }

/* A compact masthead; long page lists stay available through More. */
.site-header { position:sticky; top:0; z-index:30; background:#fff; border-bottom:1px solid var(--line); }
.header-inner { width:min(100%,var(--max)); margin:auto; min-height:78px; padding:.8rem 1.5rem; display:flex; align-items:center; gap:1.5rem; }
.brand { display:flex; align-items:center; flex:0 1 14rem; font-weight:700; font-size:1.05rem; line-height:1.35; text-decoration:none; }
.brand::before { content:""; width:8px; height:29px; border-radius:2px; background:var(--green); border-bottom:8px solid var(--gold); margin-inline-end:12px; flex:none; }
.brand[data-eyivo-logo]::before { display:none; }
.desktop-nav { display:flex; align-items:center; justify-content:flex-end; gap:.2rem; margin-inline-start:auto; min-width:0; }
.desktop-nav>a,.desktop-nav>.eyivo-navigation-item>a,.guide-more>summary { display:flex; align-items:center; min-height:42px; padding:.55rem .7rem; border-radius:7px; font-size:.82rem; font-weight:600; line-height:1.4; text-decoration:none; white-space:nowrap; }
.desktop-nav a[aria-current],.desktop-nav a:hover,.guide-more>summary:hover,.guide-more[open]>summary { background:#f0f5f3; color:var(--green); }
.header-actions { display:flex; align-items:center; gap:1rem; flex:none; }
.theme-field-guide .button { display:inline-flex; align-items:center; justify-content:center; gap:.65rem; min-height:46px; padding:.7rem 1.15rem; border:1px solid transparent; border-radius:8px; background:var(--green); color:#fff; font-size:.86rem; font-weight:700; line-height:1.5; text-decoration:none; transition:background .18s,transform .18s; }
.theme-field-guide .button:hover { background:color-mix(in srgb,var(--green) 85%,#000); transform:translateY(-1px); }
.theme-field-guide .header-cta { min-height:40px; padding:.5rem .8rem; font-size:.78rem; }
.locale-switcher { display:flex; align-items:center; gap:2px; padding:3px; border:1px solid var(--line); border-radius:7px; }
.locale-switcher a { display:grid; place-items:center; min-width:30px; min-height:30px; padding:.2rem .35rem; border-radius:4px; font-size:.68rem; font-weight:700; text-decoration:none; }
.locale-switcher a[aria-current] { background:var(--navy); color:#fff; }
.guide-more { position:relative; }
.guide-more>summary,.guide-mobile-menu>summary { list-style:none; cursor:pointer; }
.guide-more>summary::-webkit-details-marker,.guide-mobile-menu>summary::-webkit-details-marker { display:none; }
.guide-more svg { width:13px; height:13px; margin-inline-start:7px; fill:none; stroke:currentColor; stroke-width:1.6; transition:transform .2s; }
.guide-more[open]>summary svg { transform:rotate(180deg); }
.guide-more-links { position:absolute; inset-block-start:calc(100% + 10px); inset-inline-end:0; width:260px; padding:.55rem; border:1px solid var(--line); border-radius:12px; background:#fff; box-shadow:0 12px 35px #0a16281a; display:grid; gap:.15rem; }
.guide-more-links a { display:block; padding:.6rem .75rem; border-radius:6px; font-size:.84rem; line-height:1.5; text-decoration:none; overflow-wrap:anywhere; }
.guide-more-links>.eyivo-navigation-item { width:100%; }
.theme-field-guide .eyivo-navigation-parent { gap:0; border-radius:8px; }
.theme-field-guide .eyivo-navigation-parent:has(>.eyivo-navigation-dropdown[open]),.theme-field-guide .eyivo-navigation-parent:hover { background:#f0f5f3; }
.theme-field-guide .desktop-nav>.eyivo-navigation-parent>a { padding-inline-end:.25rem; }
.theme-field-guide .desktop-nav .eyivo-navigation-dropdown>summary { width:36px; min-width:36px; min-height:44px; padding:.5rem; border:0; border-radius:7px; background:transparent; color:var(--navy); box-shadow:none; }
.theme-field-guide .eyivo-navigation-submenu { padding:.5rem; min-width:230px; border-radius:12px; border-color:var(--line); box-shadow:0 12px 35px #0a16281a; }
.theme-field-guide .eyivo-navigation-submenu>a { min-height:42px; padding:.55rem .75rem; font-size:.84rem; font-weight:500; border-radius:6px; }
.theme-field-guide .guide-more-links .eyivo-navigation-submenu { position:static; min-width:0; box-shadow:none; border:0; padding-block:.2rem; padding-inline:0; padding-inline-start:.7rem; }
.guide-mobile-menu { display:none; }

/* The photograph supports the copy instead of competing with it. */
.guide-hero { position:relative; isolation:isolate; overflow:hidden; background:var(--navy); border-bottom:1px solid #ffffff18; }
.guide-hero::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(110deg,color-mix(in srgb,var(--green) 22%,var(--navy)),var(--navy) 64%); opacity:.96; }
.guide-hero .wrap { width:min(100%,var(--max)); margin:auto; padding:clamp(2.5rem,5vw,4.5rem) 1.5rem; display:grid; grid-template-columns:minmax(0,1.45fr) minmax(0,1fr); gap:clamp(2rem,4vw,3.5rem); align-items:center; }
.guide-hero-solo .wrap { display:block; }
.theme-field-guide .guide-hero .hero-component,.theme-field-guide .guide-hero .hero-component-grid { display:block; position:static; min-height:0; padding:0; background:transparent; }
.guide-hero .hero-copy { max-width:680px; padding:0; }
.theme-field-guide .guide-hero h1 { color:#fff; max-width:23ch; margin:.85rem 0 1.25rem; line-height:1.16; }
.theme-field-guide .eyebrow { display:block; color:#8d6a13; font-size:.68rem; letter-spacing:.13em; text-transform:uppercase; font-weight:700; line-height:1.6; margin-bottom:.7rem; }
.theme-field-guide .guide-hero .eyebrow { color:#e2bd64; }
.guide-hero .hero-component figure { position:absolute; inset:0; z-index:-2; margin:0; opacity:.13; }
.guide-hero .hero-component figure img { width:100%; height:100%; object-fit:cover; }
.guide-hero .hero-component figcaption { display:none; }
.theme-field-guide .guide-hero .hero-summary { color:#d1dce6; font-size:1rem; line-height:1.8; max-width:63ch; }
.button-row { display:flex; flex-wrap:wrap; align-items:center; gap:.8rem; margin-top:1.6rem; }
.theme-field-guide .text-link { font-size:.86rem; font-weight:700; text-decoration:none; line-height:1.6; }
.theme-field-guide .text-link:hover { text-decoration:underline; }
.theme-field-guide .guide-hero .text-link { color:#fff; min-height:46px; display:inline-flex; align-items:center; padding:.7rem 1.1rem; border:1px solid #ffffff40; border-radius:8px; }
.guide-hero .feature-section { padding:1.4rem; background:#ffffff08; border:1px solid #ffffff24; border-radius:16px; }
.guide-hero .feature-section .section-heading { display:block; margin-bottom:1.1rem; }
.theme-field-guide .guide-hero .feature-section h2 { font-family:inherit; font-size:1rem; color:#e2bd64; letter-spacing:0; margin-bottom:.6rem; }
.theme-field-guide .guide-hero .feature-section .section-heading p { color:#b8c7d4; font-size:.8rem; line-height:1.75; }
.guide-hero .feature-section .eyebrow:empty { display:none; }
.guide-hero .feature-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem; }
.guide-hero .feature-grid article { padding:1rem; border:1px solid #ffffff12; border-radius:9px; background:#ffffff08; }
.theme-field-guide .guide-hero .feature-grid h3 { font:700 .82rem/1.4 "DM Sans",system-ui,sans-serif; color:#f4f7fa; letter-spacing:0; margin:0 0 .45rem; }
.theme-field-guide .guide-hero .feature-grid p { color:#b8c7d4; font-size:.75rem; line-height:1.7; }
.guide-hero :is(.card-number,.feature-icon) { display:none; }

.guide-flow { width:min(100%,var(--max)); margin:auto; padding:2rem 1.5rem 3.5rem; display:grid; grid-auto-flow:row dense; grid-template-columns:minmax(0,1.65fr) minmax(0,1fr); column-gap:2.5rem; row-gap:.75rem; align-items:start; }
.guide-flow>* { min-width:0; grid-column:1 / -1; }
.theme-field-guide .section { padding-block:1.4rem; }
.guide-flow>.section:has(.prose):has(+.feature-section),.guide-flow>.section:has(.prose):has(+.image-text+.feature-section) { grid-column:1; }
.guide-flow>.feature-section { background:#fff; border:1px solid var(--line); border-radius:14px; padding:1.5rem; }
.guide-flow>.section:has(.prose)+.feature-section,.guide-flow>.section:has(.prose)+.image-text+.feature-section { grid-column:2; }
.section-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:2rem; margin-bottom:1.5rem; }
.section-heading>p { max-width:38ch; font-size:.9rem; }
.section-heading .eyebrow:empty { display:none; }
.theme-field-guide .prose-layout { display:block; }
.prose-index,.card-number { display:none; }
.prose { max-width:52rem; margin-inline:auto; overflow-wrap:anywhere; }
.prose>h2 { margin-bottom:1.2rem; }
.prose :is(p,ul,ol,figure,blockquote,dl)+* { margin-top:1.15rem; }
.prose :is(h2,h3,h4):not(:first-child) { margin-top:2.2rem; }
.prose :is(h2,h3,h4)+:is(p,ul,ol) { margin-top:.9rem; }
.prose :is(p,li) { max-width:none; }
.prose>p { white-space:pre-line; }
.prose :is(ul,ol) { padding-inline-start:1.3rem; color:var(--muted); }
.prose li { padding-inline-start:.25rem; margin-block:.6rem; }
.prose li::marker { color:var(--green); font-weight:700; }
.prose :is(h3,h4) { font-family:"DM Sans",system-ui,sans-serif; letter-spacing:0; }
.prose h3 { font-size:1.08rem; }
.prose a { color:color-mix(in srgb,var(--green) 78%,#102a23); text-decoration-thickness:1px; overflow-wrap:anywhere; }
.prose a:hover { text-decoration-thickness:2px; }
.prose figure { max-width:44rem; margin:1.6rem auto; }
.prose img { width:100%; height:auto; max-height:32rem; object-fit:cover; border-radius:14px; margin-block:1.5rem; }
.prose figure img { margin:0; aspect-ratio:16 / 10; }
.prose figcaption { margin-top:.65rem; font-size:.78rem; color:var(--muted); line-height:1.6; }
.prose figure+p:has(>em:only-child) { margin-top:-.8rem; margin-bottom:1.5rem; font-size:.78rem; line-height:1.6; }
.prose p:has(>strong:first-child) { padding:.9rem 1.1rem; background:#fff; border-inline-start:3px solid #c5dcd2; border-radius:0 8px 8px 0; }
.prose blockquote { padding:1.2rem 1.5rem; border-inline-start:3px solid var(--green); border-radius:0 10px 10px 0; background:#edf5f1; }
.prose:has(>.guide-article-aside) { display:grid; max-width:none; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); gap:0 2.5rem; align-items:start; }
.prose:has(>.guide-article-aside)>h2,.prose:has(>.guide-article-aside)>.guide-article-body { grid-column:1; }
.prose>.guide-article-aside { grid-column:2; grid-row:1 / span 2; min-width:0; padding:1.5rem; background:#fff; border:1px solid var(--line); border-radius:16px; box-shadow:0 2px 8px #0a162804; }
.theme-field-guide .guide-article-aside>h3 { margin:0 0 1rem; color:var(--ink); font:700 1rem/1.5 "DM Sans",system-ui,sans-serif; }
.prose .guide-article-aside :is(ul,ol) { margin:0; padding-inline-start:1.25rem; }
.prose .guide-article-aside ul { padding:0; list-style:none; }
.prose .guide-article-aside ul>li { position:relative; padding-inline-start:1.4rem; }
.prose .guide-article-aside ul>li::before { content:"✓"; position:absolute; inset-inline-start:0; color:var(--green); font-weight:700; }
.prose .guide-article-aside :is(p,li) { font-size:.88rem; line-height:1.75; }
.prose .guide-article-aside li:first-child { margin-top:0; }
.prose .guide-article-aside li:last-child { margin-bottom:0; }
.prose .guide-article-aside p { padding:0; border:0; background:none; }

/* A closing, single-paragraph reference section forms a full-width source band.
   Its shape, rather than a translated title or customer URL, identifies it. */
.guide-home-content:has(>.section:last-child .prose>div>p:only-child a[href^="https://"]) { padding-bottom:0; }
.guide-home-content>.section:last-child:has(.prose>div>p:only-child a[href^="https://"]) { margin-top:1.25rem; padding-block:2.5rem; background:#152238; box-shadow:0 0 0 100vmax #152238; clip-path:inset(0 -100vmax); }
.guide-home-content>.section:last-child:has(.prose>div>p:only-child a[href^="https://"]) .prose { max-width:none; }
.guide-home-content>.section:last-child:has(.prose>div>p:only-child a[href^="https://"]) h2 { margin-bottom:.75rem; color:var(--gold); font-size:1.35rem; line-height:1.3; }
.guide-home-content>.section:last-child:has(.prose>div>p:only-child a[href^="https://"]) p { max-width:52rem; color:#e0e4e9; font-size:1.05rem; line-height:1.7; }
.guide-home-content>.section:last-child:has(.prose>div>p:only-child a[href^="https://"]) a { color:#7dcea0; }
.guide-home-content>.section:last-child:has(.prose>div>p:only-child a[href^="https://"]) a:hover { color:#b5e7c9; }

.guide-flow>.feature-section .section-heading { display:block; margin-bottom:1rem; }
.guide-flow>.feature-section h2 { font:700 1rem/1.5 "DM Sans",system-ui,sans-serif; letter-spacing:0; }
.guide-flow>.feature-section .section-heading>p { margin-top:.6rem; font-size:.84rem; }
.guide-flow .feature-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr)); gap:1.2rem; }
.guide-flow>.section:has(.prose)+.feature-section .feature-grid,.guide-flow>.section:has(.prose)+.image-text+.feature-section .feature-grid { grid-template-columns:1fr; }
.guide-flow .feature-grid article { position:relative; padding-inline-start:1.3rem; }
.guide-flow .feature-grid article::before { content:"✓"; position:absolute; inset-inline-start:0; color:var(--green); font-size:.9rem; }
.guide-flow .feature-grid .feature-icon { display:none; }
.guide-flow .feature-grid h3 { font:600 .89rem/1.5 "DM Sans",system-ui,sans-serif; letter-spacing:0; margin-bottom:.25rem; }
.guide-flow .feature-grid p { font-size:.83rem; line-height:1.7; }
/* Linked guides read like an editorial index, with optional authored imagery. */
.service-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 2rem; }
.service-list article { position:relative; min-width:0; display:grid; grid-template-columns:minmax(0,1fr) 2.75rem; align-items:start; gap:1rem; padding:1.4rem 0; border-bottom:1px solid var(--line); }
.service-list article>span { display:none; }
.service-list article h3 { margin-bottom:.5rem; font:700 1.08rem/1.4 "DM Sans",system-ui,sans-serif; letter-spacing:-.015em; overflow-wrap:anywhere; }
.service-list article p { font-size:.89rem; line-height:1.75; }
.service-list .service-card-media { grid-column:1; margin:0; max-width:none; overflow:hidden; border-radius:10px; background:#e3eae6; }
.service-list .service-card-media img { width:100%; height:100%; max-height:none; aspect-ratio:1; object-fit:cover; transition:transform .3s; }
.service-list article:has(>.service-card-media) { grid-template-columns:6.5rem minmax(0,1fr) 2.75rem; }
.service-list article>a { display:grid; place-items:center; width:44px; min-height:44px; border:1px solid #d0dfd7; border-radius:50%; color:var(--green); font-size:1.2rem; text-decoration:none; background:transparent; transition:background .2s,color .2s; }
.service-list article>a::after { content:""; position:absolute; inset:0; border-radius:10px; }
.service-list article:has(>a):hover h3 { color:var(--green); text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:.2em; }
.service-list article:has(>a):hover .service-card-media img { transform:scale(1.035); }
.service-list article>a:is(:hover,:focus-visible) { background:var(--green); color:#fff; }
.service-list article>a:focus-visible { outline:none; }
.service-list article>a:focus-visible::after { outline:3px solid #c99700; outline-offset:5px; }
.service-section-linked .service-list article:has(>a:focus-visible) { outline:3px solid #c99700; outline-offset:5px; }
.service-section-linked .section-heading { align-items:end; padding-bottom:1rem; border-bottom:1px solid var(--line); margin-bottom:.25rem; }
.service-section .section-heading>p:empty { display:none; }

/* Two lead stories, then quiet supporting routes, break the homepage rhythm. */
.guide-home-content>.service-section-linked { padding-block:2rem; }
.guide-home-content>.service-section-linked .service-list { row-gap:1.25rem; }
.guide-home-content>.service-section-linked:not(.service-section-linked+.service-section-linked) article:has(>.service-card-media):nth-child(-n+2) { grid-template-columns:minmax(0,1fr) 4.5rem; gap:0; padding:0; border:1px solid var(--line); border-radius:16px; background:#fff; overflow:hidden; }
.guide-home-content>.service-section-linked:not(.service-section-linked+.service-section-linked) article:has(>.service-card-media):nth-child(-n+2) .service-card-media { grid-column:1 / -1; border-radius:0; }
.guide-home-content>.service-section-linked:not(.service-section-linked+.service-section-linked) article:has(>.service-card-media):nth-child(-n+2) img { aspect-ratio:16 / 8; }
.guide-home-content>.service-section-linked:not(.service-section-linked+.service-section-linked) article:has(>.service-card-media):nth-child(-n+2) .service-card-copy { padding:1.4rem 1rem 1.5rem 1.5rem; }
.guide-home-content>.service-section-linked:not(.service-section-linked+.service-section-linked) article:has(>.service-card-media):nth-child(-n+2) h3 { font:600 clamp(1.25rem,1.8vw,1.55rem)/1.3 Fraunces,Georgia,serif; margin-bottom:.7rem; }
.guide-home-content>.service-section-linked:not(.service-section-linked+.service-section-linked) article:has(>.service-card-media):nth-child(-n+2)>a { margin-top:1.4rem; margin-inline-end:1.25rem; width:44px; min-height:44px; }

/* Consecutive guide collections use a feature and a compact reading list. */
.guide-home-content>.service-section-linked+.service-section-linked .service-list { grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:0 2rem; }
.guide-home-content>.service-section-linked+.service-section-linked article { grid-column:2; border:0; border-bottom:1px solid var(--line); border-radius:0; background:none; padding:1.2rem 0; gap:1rem; }
.guide-home-content>.service-section-linked+.service-section-linked article:has(>.service-card-media) { grid-template-columns:5.25rem minmax(0,1fr) 2.75rem; }
.guide-home-content>.service-section-linked+.service-section-linked article .service-card-media { grid-column:auto; border-radius:9px; }
.guide-home-content>.service-section-linked+.service-section-linked article img { aspect-ratio:1; }
.guide-home-content>.service-section-linked+.service-section-linked article .service-card-copy { padding:0; }
.guide-home-content>.service-section-linked+.service-section-linked article h3 { font:700 1.02rem/1.45 "DM Sans",system-ui,sans-serif; margin-bottom:.5rem; }
.guide-home-content>.service-section-linked+.service-section-linked article>a { margin:0; transform:none; width:44px; min-height:44px; }
.guide-home-content>.service-section-linked+.service-section-linked article:first-child { grid-column:1; grid-row:1 / span 4; display:flex; flex-direction:column; gap:0; align-self:stretch; padding:0; margin-top:1.2rem; border:0; border-radius:16px; overflow:hidden; background:var(--navy); }
.guide-home-content>.service-section-linked+.service-section-linked article:first-child .service-card-media { width:100%; border-radius:0; }
.guide-home-content>.service-section-linked+.service-section-linked article:first-child img { aspect-ratio:16 / 9; }
.guide-home-content>.service-section-linked+.service-section-linked article:first-child .service-card-copy { padding:1.75rem 1.75rem 1rem; }
.guide-home-content>.service-section-linked+.service-section-linked article:first-child h3 { color:#fff; font:600 1.65rem/1.3 Fraunces,Georgia,serif; }
.guide-home-content>.service-section-linked+.service-section-linked article:first-child p { color:#c6d4df; }
.guide-home-content>.service-section-linked+.service-section-linked article:first-child>a { margin:0 1.75rem 1.75rem; margin-top:auto; background:var(--green); color:#fff; border-color:transparent; }

/* Informative and mixed lists are reading panels, never imitation buttons. */
.service-section-informative>.shell { display:grid; grid-template-columns:minmax(0,.75fr) minmax(0,1.65fr); gap:2.5rem; padding:2.25rem; border:1px solid #d6e3dc; border-radius:20px; background:linear-gradient(125deg,#e9f1ec,#f3f6f1); }
.service-section-informative .section-heading { display:block; margin:0; }
.service-section-informative .section-heading::before { content:""; display:block; width:2.5rem; height:3px; margin-bottom:1.25rem; background:var(--green); }
.service-section-informative h2 { font-size:clamp(1.4rem,2.2vw,1.8rem); line-height:1.3; }
.service-section-informative .section-heading>p { margin-top:1rem; }
.service-section-informative .service-list { gap:0 1.75rem; }
.service-section-informative .service-list article { grid-template-columns:2rem minmax(0,1fr); align-content:start; gap:.75rem; padding:1.25rem 0; border:0; border-top:1px solid #ceded4; }
.service-section-informative .service-list article:nth-child(-n+2) { padding-top:0; border-top:0; }
.service-section-informative .service-list article>span { display:grid; place-items:center; width:30px; height:30px; margin-top:.1rem; border-radius:50%; background:#d8e8de; color:#315c48; font:600 .7rem/1 ui-monospace,monospace; }
.service-section-informative .service-list h3 { font-size:.98rem; letter-spacing:0; }
.service-section-informative .service-list p { font-size:.87rem; line-height:1.8; }
.service-section-informative .service-card-media { grid-column:2; width:min(100%,12rem); }
.service-section-informative .service-card-media img { aspect-ratio:16 / 9; }
.service-section-informative .service-card-copy { grid-column:2; }
.service-section-informative .service-list article>a { grid-column:2; justify-self:start; margin-top:-.25rem; border:0; border-radius:0; background:none; }
.service-section-informative .service-list article>a::after { display:none; }
.service-section-informative .service-list article>a:focus-visible { outline:3px solid #c99700; outline-offset:3px; }
.service-section-informative .service-list article:has(>a):hover h3 { color:var(--navy); text-decoration:none; }
.image-text-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); gap:2.5rem; align-items:center; }
.image-text-image_right .image-text-grid { grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); }
.image-text-image_right figure { order:2; }
.image-text figure { margin:0; position:relative; border-radius:14px; overflow:hidden; }
.image-text figure img { width:100%; height:clamp(17rem,30vw,25rem); object-fit:cover; }
.image-text figcaption { position:absolute; bottom:1rem; inset-inline-start:1rem; background:#ffffffeb; padding:.4rem .7rem; border-radius:5px; color:var(--navy); font-size:.72rem; }
.image-text-copy h2 { margin:.6rem 0 1.1rem; }
.image-text-copy>p:not(.eyebrow) { font-size:.94rem; line-height:1.85; }
.image-text-copy .text-link { display:inline-flex; margin-top:1.3rem; }
.image-text:has(.image-text-copy:not(:has(a)):has(>.eyebrow:empty):has(>h2:empty):has(>p:not(.eyebrow):empty)) .image-text-grid { display:block; }
.image-text-copy:not(:has(a)):has(>.eyebrow:empty):has(>h2:empty):has(>p:not(.eyebrow):empty) { display:none; }
.theme-field-guide img[src=""],.theme-field-guide img:not([src]) { display:none; }

.theme-field-guide :is(.stats-grid,.project-grid,.team-grid,.testimonial-grid,.credentials-grid,.editorial-gallery,.native-card-grid,.article-list,.event-list,.gallery-grid) { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr)); gap:1.15rem; }
.theme-field-guide :is(.stats-grid article,.credentials-grid article,.testimonial-grid blockquote,.article-list a,.event-card,.native-card,.project-grid a,.team-grid article,.editorial-gallery figure,.gallery-grid figure) { min-width:0; background:#fff; border:1px solid var(--line); border-radius:13px; overflow:hidden; margin:0; padding:1.4rem; text-decoration:none; }
.theme-field-guide :is(.event-card-image img,.project-grid img,.team-grid-image,.editorial-gallery img,.gallery-grid img,.native-card img,.slider-track img,.blog-card-media img,.blog-post-cover) { width:100%; height:clamp(12rem,24vw,17rem); object-fit:cover; display:block; }
.theme-field-guide :is(.event-card,.native-card,.project-grid a,.team-grid article,.editorial-gallery figure,.gallery-grid figure) { padding:0; }
.theme-field-guide :is(.event-card-content,.native-card-copy,.project-grid a>div,.team-grid article>div,.editorial-gallery figcaption,.gallery-grid figcaption) { padding:1.25rem; }
.theme-field-guide .event-card-content h3 { margin:.65rem 0; }
.theme-field-guide .event-card-content p { font-size:.85rem; }
.theme-field-guide .article-list a { display:flex; flex-direction:column; gap:.75rem; }
.theme-field-guide .article-list a>p { font-size:.88rem; }
.theme-field-guide .article-list a>span { color:var(--green); font-size:.8rem; font-weight:600; }
.theme-field-guide .stats-grid strong { display:block; color:var(--green); font-size:2rem; line-height:1.3; }
.theme-field-guide .credentials-grid :is(strong,span) { display:block; }
.theme-field-guide .credentials-grid span { margin-top:.5rem; color:var(--muted); font-size:.88rem; }
.theme-field-guide .faq-list details { background:#fff; border:1px solid var(--line); border-radius:10px; padding:1rem 1.2rem; margin-bottom:.7rem; }
.theme-field-guide .faq-list summary { cursor:pointer; font-weight:600; color:var(--navy); }
.theme-field-guide .faq-list details[open] { border-color:#a9c5b9; background:#fbfdfc; }
.theme-field-guide .faq-list details p { padding-top:.8rem; font-size:.92rem; }
.theme-field-guide :is(.download-list,.hours-layout dl,.specs-layout dl) { display:grid; gap:.6rem; }
.theme-field-guide :is(.download-list a,.hours-layout dl>div,.specs-layout dl>div) { display:grid; grid-template-columns:minmax(4rem,.4fr) minmax(0,1fr) auto; gap:.8rem; align-items:center; background:#fff; border:1px solid var(--line); border-radius:9px; padding:.9rem 1.1rem; text-decoration:none; }
.theme-field-guide .tab-buttons { display:flex; flex-wrap:wrap; gap:.5rem; margin:.8rem 0; }
.theme-field-guide :is(.tab-buttons button,.filter-chips button) { border:1px solid var(--line); background:#fff; border-radius:6px; padding:.55rem .9rem; font-weight:600; color:var(--navy); }
.theme-field-guide :is(.announcement-panel .shell,.price-offer,.contact-actions,.location-grid,.logo-cloud .shell) { display:grid; gap:1rem; background:#fff; border:1px solid var(--line); border-radius:13px; padding:1.6rem; }
.theme-field-guide .logo-cloud .shell>div { display:flex; flex-wrap:wrap; gap:.7rem; }
.theme-field-guide .logo-cloud span { border:1px solid var(--line); border-radius:6px; padding:.45rem .8rem; font-weight:600; }
.theme-field-guide .map-visual { display:block; overflow:hidden; border-radius:12px; }
.theme-field-guide .map-visual img { width:100%; height:clamp(14rem,28vw,20rem); object-fit:cover; }
.theme-field-guide .slider-track { display:grid; grid-auto-flow:column; grid-auto-columns:minmax(0,75%); gap:1rem; overflow-x:auto; scroll-snap-type:x mandatory; }
.theme-field-guide .slider-track>* { scroll-snap-align:start; }
.theme-field-guide :is(.video-poster,.video-placeholder) { display:grid; min-height:15rem; place-items:center; position:relative; border-radius:13px; overflow:hidden; color:#fff; font-weight:700; text-decoration:none; background:var(--navy); }
.theme-field-guide .video-poster img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.theme-field-guide .play-button { position:relative; background:#fff; color:var(--navy); border-radius:7px; padding:.6rem 1rem; }
.theme-field-guide .filter-panel .shell { display:grid; gap:.8rem; }
.theme-field-guide .filter-panel input { width:min(100%,28rem); padding:.8rem 1rem; border:1px solid var(--line); border-radius:8px; }
.theme-field-guide :is(.blog-shell,.page-hero .shell) { width:min(100%,var(--max)); margin-inline:auto; padding-inline:1.5rem; }
.theme-field-guide :is(.blog-header,.page-hero) { padding-block:2.5rem 1rem; }
.theme-field-guide :is(.blog-grid,.video-grid) { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr)); gap:1.2rem; }
.theme-field-guide :is(.blog-card,.video-card) { background:#fff; border:1px solid var(--line); border-radius:13px; overflow:hidden; }
.theme-field-guide :is(.blog-card-copy,.video-card) { padding:1.4rem; }
.theme-field-guide .blog-post-body { display:grid; gap:1rem; }
.theme-field-guide .blog-post-body img { width:100%; height:auto; border-radius:12px; }
.theme-field-guide .contact-layout { width:min(100%,var(--max)); margin:1rem auto 3rem; padding-inline:1.5rem; display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:2.5rem; }
.contact-details { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:2rem; padding:1.6rem; border:1px solid var(--line); border-radius:14px; background:#fff; }
.contact-details p:not(.eyebrow) { display:grid; grid-template-columns:5rem minmax(0,1fr); gap:.8rem; padding:.6rem 0; border-bottom:1px solid var(--line); }
.contact-details p:last-child { border-bottom:0; }
.contact-details p>span { font-size:.8rem; color:var(--muted); }
.guide-flow:has(.contact-details)+.contact-section .contact-aside { display:none; }
.theme-field-guide .guide-flow:has(.contact-details)+.contact-section .contact-layout { display:block; }
.theme-field-guide .lead-form-section { width:min(100%,var(--max)); margin:0 auto 3rem; padding-inline:1.5rem; }
.theme-field-guide .guide-flow>.lead-form-section { width:100%; margin:0; padding-inline:0; }
.lead-form-layout { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:2.5rem; align-items:start; }
.lead-form-layout>div>p:not(.eyebrow) { margin-top:1rem; }
.contact-aside { display:grid; align-content:start; gap:1rem; }
.contact-aside:not(:has(>a,>div)) { display:none; }
.theme-field-guide .contact-layout:not(:has(.contact-aside>a,.contact-aside>div)) { display:block; }
.contact-layout:not(:has(.contact-aside>a,.contact-aside>div))>.lead-form { max-width:52rem; margin-inline:auto; }
.contact-aside>a { display:grid; text-decoration:none; }
.contact-aside span { display:block; font-size:.8rem; color:var(--muted); }
.lead-form { display:grid; gap:1rem; background:#fff; border:1px solid var(--line); border-radius:14px; padding:1.6rem; }
.lead-form label { display:grid; gap:.45rem; font-size:.9rem; font-weight:600; }
.lead-form label>small { font-size:.75rem; font-weight:400; color:var(--muted); }
.lead-form :is(input:not([type=checkbox]),textarea,select):focus { border-color:var(--green); background:#fff; }
.lead-form textarea { resize:vertical; min-height:8rem; }
.lead-form button { justify-self:start; min-width:10rem; }
.lead-form :is(input:not([type=checkbox]),textarea,select) { width:100%; padding:.7rem .8rem; border:1px solid var(--line); border-radius:6px; background:#fcfdff; color:var(--ink); }
.lead-form input[type=checkbox] { width:auto; justify-self:start; }
.lead-form .honeypot { position:absolute; width:1px!important; height:1px!important; padding:0!important; opacity:0; pointer-events:none; }
.theme-field-guide .cta-section { width:min(100%,var(--max)); margin:0 auto 3rem; padding-inline:1.5rem; }
.theme-field-guide .cta-section .shell { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:1.5rem 3rem; border:1px solid var(--line); border-inline-start:4px solid var(--green); background:#fff; border-radius:12px; padding:2rem; }
.theme-field-guide .cta-section .shell>div { max-width:44rem; }
.theme-field-guide .cta-section h2 { margin:.4rem 0 .8rem; }
.theme-field-guide .cta-section p { max-width:65ch; font-size:.94rem; }

.site-footer { background:var(--navy); color:#d2dce8; padding:3rem 1.5rem 0; }
.footer-inner { width:min(100%,calc(var(--max) - 3rem)); margin:auto; display:grid; grid-template-columns:1.2fr 1fr; gap:4rem; padding-bottom:2.5rem; }
.footer-inner:not(:has(.footer-links)) { grid-template-columns:1fr; }
.theme-field-guide .site-footer h2 { color:#fff; font-size:1.35rem; margin-bottom:1rem; }
.theme-field-guide .site-footer p { color:#b1c0d1; font-size:.88rem; line-height:1.8; max-width:55ch; }
.theme-field-guide .site-footer .disclaimer { color:#a2b2c5; font-size:.8rem; margin-top:1rem; }
.footer-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-content:start; gap:.6rem 1.5rem; }
.theme-field-guide .site-footer a { color:#d2dce8; font-size:.88rem; line-height:1.65; text-decoration:none; }
.theme-field-guide .site-footer a:hover { color:#fff; text-decoration:underline; }
.footer-bottom { width:min(100%,calc(var(--max) - 3rem)); margin:auto; border-top:1px solid #ffffff17; padding:1.2rem 0; display:flex; justify-content:space-between; flex-wrap:wrap; gap:1rem; color:#8296b0; font-size:.74rem; }
.theme-field-guide .footer-bottom a { font-size:.74rem; }

@media (max-width:1100px) {
    .header-inner { gap:1rem; }
    .desktop-nav>a,.desktop-nav>.eyivo-navigation-item>a,.guide-more>summary { padding-inline:.45rem; font-size:.78rem; }
    .brand { flex-basis:11rem; }
    .header-cta { display:none!important; }
}
@media (max-width:900px) {
    .header-inner { flex-wrap:wrap; min-height:74px; padding-block:.85rem; }
    .brand { flex:1; }
    .desktop-nav { display:none; }
    .header-actions { margin-inline-start:auto; }
    .guide-mobile-menu { display:block; }
    .guide-mobile-menu>summary { display:flex; align-items:center; gap:.5rem; min-height:42px; padding:.4rem .6rem; border:1px solid var(--line); border-radius:6px; color:var(--navy); font-size:.8rem; font-weight:600; }
    .guide-mobile-menu>summary svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:1.7; }
    .guide-mobile-menu[open] { display:contents; }
    .guide-mobile-menu[open]>summary { background:#eff5f2; }
    .guide-mobile-menu>nav { width:100%; flex-basis:100%; display:grid; gap:.3rem; max-height:calc(100svh - 6rem); overflow-y:auto; border-top:1px solid var(--line); padding-block:1rem .3rem; }
    .guide-mobile-menu>nav>a,.guide-mobile-menu>nav>.eyivo-navigation-item>a { display:block; min-height:44px; padding:.55rem .75rem; font-size:.92rem; font-weight:500; text-decoration:none; border-radius:6px; }
    .guide-mobile-menu>nav a[aria-current] { color:var(--green); background:#edf5f1; }
    .theme-field-guide .guide-mobile-menu .eyivo-navigation-item { display:flex; flex-wrap:wrap; width:100%; }
    .theme-field-guide .guide-mobile-menu .eyivo-navigation-item>a { flex:1; }
    .theme-field-guide .guide-mobile-menu .eyivo-navigation-dropdown { display:contents; }
    .theme-field-guide .guide-mobile-menu .eyivo-navigation-dropdown>summary { display:grid; place-items:center; width:44px; min-height:44px; cursor:pointer; }
    .theme-field-guide .guide-mobile-menu .eyivo-navigation-submenu { position:static; width:100%; flex-basis:100%; border:0; border-inline-start:2px solid #cce0d6; border-radius:0; box-shadow:none; padding:.1rem .5rem; margin-block:.2rem .5rem; margin-inline:0; margin-inline-start:.8rem; }
    .guide-hero .wrap { grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); gap:1.8rem; }
    .guide-hero .feature-section { padding:1rem; }
    .guide-hero .feature-grid article { padding:.7rem; }
    .guide-flow { grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); gap:1.4rem; }
    .prose:has(>.guide-article-aside) { grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); column-gap:1.5rem; }
    .prose>.guide-article-aside { padding:1.15rem; }
    .service-section-informative>.shell { display:block; padding:1.75rem; }
    .service-section-informative .section-heading { margin-bottom:1.75rem; max-width:38rem; }
    .guide-home-content>.service-section-linked+.service-section-linked .service-list { display:block; }
    .guide-home-content>.service-section-linked+.service-section-linked article:first-child { margin-bottom:1rem; }
    .guide-home-content>.service-section-linked+.service-section-linked article:first-child .service-card-media { max-height:15rem; }
    .image-text-grid { gap:1.8rem; }
}
@media (max-width:760px) {
    .prose:has(>.guide-article-aside) { display:block; }
    .prose>.guide-article-aside { margin-top:1.5rem; padding:1.4rem; }
}
@media (max-width:680px) {
    .header-inner { display:grid; grid-template-columns:minmax(0,1fr) auto auto; padding-inline:1.1rem; gap:.6rem; }
    .brand { min-width:0; font-size:.92rem; overflow-wrap:anywhere; }
    .brand::before { height:25px; width:6px; margin-inline-end:9px; }
    .header-actions { gap:.4rem; }
    .locale-switcher { gap:0; padding:2px; }
    .locale-switcher a { min-width:25px; min-height:30px; font-size:.62rem; }
    .guide-mobile-menu>nav { grid-column:1 / -1; }
    .guide-mobile-menu>summary { padding:.4rem; font-size:.72rem; gap:.3rem; }
    .guide-hero .wrap { display:block; padding:2.3rem 1.25rem; }
    .theme-field-guide .guide-hero h1 { font-size:clamp(1.9rem,7.7vw,2.5rem); max-width:25ch; line-height:1.18; }
    .theme-field-guide .guide-hero .hero-summary { font-size:.91rem; line-height:1.8; }
    .guide-hero .feature-section { padding:1.2rem; margin-top:2rem; }
    .guide-hero .feature-grid article { padding:.9rem; }
    .button-row { gap:.7rem; }
    .guide-hero .button-row>a { width:100%; min-height:46px; justify-content:center; font-size:.82rem; }
    .guide-flow { display:block; padding:1.4rem 1.25rem 2.5rem; }
    .guide-flow>.feature-section { margin:1rem 0; padding:1.25rem; }
    .section-heading { display:block; margin-bottom:1.3rem; }
    .section-heading>p { margin-top:.7rem; }
    .theme-field-guide .section { padding-block:1.3rem; }
    .service-list { grid-template-columns:1fr; }
    .service-section-informative>.shell { padding:1.4rem; border-radius:14px; }
    .service-section-informative .service-list { grid-template-columns:1fr; }
    .service-section-informative .service-list article:nth-child(2) { padding-top:1.25rem; border-top:1px solid #ceded4; }
    .service-list article:has(>.service-card-media),.guide-home-content>.service-section-linked+.service-section-linked article:has(>.service-card-media):not(:first-child) { grid-template-columns:4.5rem minmax(0,1fr) 2.75rem; gap:.8rem; }
    .guide-home-content>.service-section-linked:not(.service-section-linked+.service-section-linked) article:has(>.service-card-media):nth-child(-n+2) { grid-template-columns:minmax(0,1fr) 4.5rem; gap:0; }
    .guide-home-content>.service-section-linked+.service-section-linked article:not(:first-child):has(>.service-card-media) { grid-template-columns:4.5rem minmax(0,1fr); }
    .guide-home-content>.service-section-linked+.service-section-linked article:not(:first-child)>a { position:absolute; top:1.2rem; inset-inline-end:0; }
    .guide-home-content>.service-section-linked+.service-section-linked article:not(:first-child) h3 { padding-inline-end:3.25rem; }
    .prose :is(h2,h3,h4):not(:first-child) { margin-top:1.8rem; }
    .prose>.guide-article-aside>h3 { margin-top:0; }
    .prose figure img { max-height:22rem; }
    .image-text-grid,.image-text-image_right .image-text-grid,.theme-field-guide .contact-layout,.contact-details,.lead-form-layout,.footer-inner { grid-template-columns:1fr; }
    .image-text-grid { gap:1.5rem; }
    .image-text-image_right figure { order:0; }
    .image-text figure img { height:19rem; }
    .theme-field-guide :is(.download-list a,.hours-layout dl>div,.specs-layout dl>div) { grid-template-columns:1fr; }
    .theme-field-guide .contact-layout { padding-inline:1.25rem; gap:2rem; }
    .theme-field-guide .lead-form-section { padding-inline:1.25rem; }
    .contact-details { padding:1.25rem; gap:1rem; }
    .theme-field-guide .cta-section { padding-inline:1.25rem; margin-bottom:2rem; }
    .theme-field-guide .cta-section .shell { padding:1.5rem; }
    .site-footer { padding:2.5rem 1.25rem 0; }
    .footer-inner { width:100%; gap:2rem; }
    .footer-bottom { width:100%; font-size:.7rem; }
    .footer-links { gap:.8rem 1rem; }
}
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition:none!important; } }
