/* Catering Services: cream pages, forest green bands, olive highlights, Gilda Display headings and arched food photography. */
*,*::before,*::after{box-sizing:border-box}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd,ul{margin:0}ul{padding:0;list-style:none}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}[hidden]{display:none!important}
:root{--ink:#1d2a22;--muted:#66705f;--cream:#f5f2ea;--card:#fffdf8;--line:#e3ddcc;--forest:var(--second);--olive:var(--accent);--sage:#cdd6ae;--sand:#e9e5c6;--accent:var(--public-accent,var(--theme-accent,#7f9152));--second:var(--brand-secondary,var(--theme-secondary,#163a2a));--eyivo-color-primary:var(--accent);--eyivo-color-secondary:var(--second);--eyivo-color-text:var(--ink);--eyivo-color-background:var(--cream);--eyivo-font-body:Jost,Arial,sans-serif;--eyivo-font-heading:'Gilda Display',Georgia,serif;--eyivo-radius:1rem;--eyivo-container-width:72rem;--eyivo-nav-menu-bg:#163a2a;--eyivo-nav-menu-text:#f5f2ea}
body{min-width:320px;background:var(--cream);color:var(--ink);font:400 .97rem/1.7 var(--eyivo-font-body);-webkit-font-smoothing:antialiased}
.shell{width:min(100% - 2.5rem,var(--eyivo-container-width));margin-inline:auto}
h1,h2,h3,h4{font-family:var(--eyivo-font-heading);font-weight:400;line-height:1.15;color:var(--ink);overflow-wrap:anywhere;text-wrap:balance}
h1{font-size:clamp(2.3rem,4.2vw,3.5rem)}h2{font-size:clamp(1.7rem,2.7vw,2.35rem)}h3{font-size:1.2rem}
p{color:var(--muted)}p+p,[data-eyivo-rich-text]>*+*{margin-top:.9rem}
:focus-visible{outline:2px solid var(--olive);outline-offset:3px}
.eyebrow{margin-bottom:.5rem;color:var(--olive);font-size:.76rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase}
.section{padding-block:clamp(3rem,6vw,5rem)}
.section-heading{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:.8rem 2rem;margin-bottom:2rem}
.section-heading h2::after,.sage-divider{content:"";display:block;width:2.6rem;height:.9rem;margin-top:.5rem;background:var(--olive);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 52 18' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M2 9h18M32 9h18'/%3E%3Cpath d='M26 3c-3 2-3 10 0 12 3-2 3-10 0-12zM26 9c-2-3-6-4-8-3 1 3 5 4 8 3zM26 9c2-3 6-4 8-3-1 3-5 4-8 3z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 52 18' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M2 9h18M32 9h18'/%3E%3Cpath d='M26 3c-3 2-3 10 0 12 3-2 3-10 0-12zM26 9c-2-3-6-4-8-3 1 3 5 4 8 3zM26 9c2-3 6-4 8-3-1 3-5 4-8 3z'/%3E%3C/svg%3E") center/contain no-repeat}
.section-heading>p{max-width:28rem;font-size:.92rem}
.sr-only,.honeypot{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;z-index:200;top:1rem;inset-inline-start:1rem;padding:.7rem 1rem;border-radius:999px;background:var(--forest);color:#fff;transform:translateY(-220%)}.skip-link:focus{transform:none}
.button,.header-cta{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:44px;padding:.6rem 1.4rem;border:1px solid var(--forest);border-radius:999px;background:var(--forest);color:#f5f2ea;font-size:.86rem;font-weight:500;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s}
.button:hover{border-color:#0f2a1e;background:#0f2a1e}
.button-ghost{border-color:var(--forest);background:transparent;color:var(--forest)}.button-ghost:hover{background:var(--forest);color:#f5f2ea}
.button-row{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem}
.text-link{display:inline-flex;align-items:center;gap:.4rem;min-height:44px;color:var(--forest);font-size:.88rem;font-weight:500}.text-link:hover{color:var(--olive)}

/* Header */
.site-header{position:relative;z-index:30;background:var(--forest);color:#f5f2ea}
.sage-header{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:76px}
.brand{display:inline-flex;align-items:center;gap:.5rem;font:400 1.35rem/1 var(--eyivo-font-heading);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.sage-sprig{display:inline-block;width:1.2rem;height:1.4rem;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M10 23V4'/%3E%3Cpath d='M10 8c-3-1-5-4-5-6 3 0 5 3 5 6zM10 8c3-1 5-4 5-6-3 0-5 3-5 6zM10 14c-3-1-6-3-6-6 3 0 6 3 6 6zM10 14c3-1 6-3 6-6-3 0-6 3-6 6z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M10 23V4'/%3E%3Cpath d='M10 8c-3-1-5-4-5-6 3 0 5 3 5 6zM10 8c3-1 5-4 5-6-3 0-5 3-5 6zM10 14c-3-1-6-3-6-6 3 0 6 3 6 6zM10 14c3-1 6-3 6-6-3 0-6 3-6 6z'/%3E%3C/svg%3E") center/contain no-repeat}
.brand .sage-sprig{color:var(--sand)}
.desktop-nav{display:flex;align-items:center;gap:.2rem}
.desktop-nav>a,.desktop-nav>.eyivo-navigation-item>a,.more-menu>summary{display:flex;align-items:center;min-height:42px;padding:.4rem .75rem;color:#e3e7d8;font-size:.88rem;white-space:nowrap}
.desktop-nav>a:hover,.desktop-nav>a[aria-current],.desktop-nav>.eyivo-navigation-item>a[aria-current]{color:var(--sand)}
.sage-header-end{display:flex;align-items:center;gap:.8rem}
.header-cta{min-height:38px;padding:.4rem 1.2rem;border-color:var(--sand);background:var(--sand);color:var(--forest);white-space:nowrap}.header-cta:hover{background:#fff}
.locale-switcher{display:flex;gap:.3rem;font-size:.76rem;text-transform:uppercase}.locale-switcher a{padding:.2rem .4rem;border-radius:999px}.locale-switcher a[aria-current]{background:#ffffff1f}
.more-menu{position:relative}.more-menu>summary{gap:.3rem;list-style:none;cursor:pointer}.more-menu>summary::-webkit-details-marker{display:none}
.more-menu>div{position:absolute;top:calc(100% + .4rem);inset-inline-end:0;display:grid;min-width:12rem;padding:.4rem;border-radius:.8rem;background:#1e4a36;box-shadow:0 18px 40px #0007}.more-menu>div>a{padding:.55rem .8rem;border-radius:.5rem;font-size:.88rem}.more-menu>div>a:hover{background:#ffffff14}
:root .catering-services .site-header .eyivo-navigation-item.eyivo-navigation-parent{border:0;background:transparent;color:#e3e7d8}
:root .catering-services .site-header .eyivo-navigation-item.eyivo-navigation-parent:is(:hover,:has(>a[aria-current])){background:transparent;color:var(--sand)}
:root .catering-services .eyivo-navigation-item .eyivo-navigation-submenu{border-color:#ffffff1a;background:#1e4a36;color:#f5f2ea}
:root .catering-services .eyivo-navigation-item .eyivo-navigation-submenu>a:is(:hover,[aria-current=page]){background:#ffffff14;color:var(--sand)}
.mobile-menu{display:none}

/* Hero */
.hero-component{position:relative;overflow:hidden;padding-block:clamp(3rem,6vw,5rem)}
.hero-component::before{content:"";position:absolute;top:10%;inset-inline-start:45%;width:18rem;height:18rem;border:1px dashed #cfc5a5;border-radius:50%;pointer-events:none}
.hero-component-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(2rem,5vw,4rem)}
.hero-component h1{max-width:14ch;font-size:clamp(2.4rem,4.4vw,3.6rem)}
.hero-component h1::after{content:"";display:inline-block;width:2.2rem;height:2.2rem;margin-inline-start:.5rem;vertical-align:middle;background:var(--olive);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M6 28C8 16 16 8 28 4 26 16 18 24 6 28zM6 28l12-12'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M6 28C8 16 16 8 28 4 26 16 18 24 6 28zM6 28l12-12'/%3E%3C/svg%3E") center/contain no-repeat}
.hero-component .hero-summary{max-width:40ch;margin-top:1.2rem}
.hero-component .button-row{margin-top:1.8rem}
.hero-component .text-link{padding:.55rem 1.3rem;border:1px solid var(--forest);border-radius:999px}
.hero-component figure{position:relative;overflow:hidden;border-radius:10rem 1.4rem 1.4rem 1.4rem}
[dir=rtl] .hero-component figure{border-radius:1.4rem 10rem 1.4rem 1.4rem}
.hero-component figure img{width:100%;aspect-ratio:4/4.3;object-fit:cover}
.hero-component figcaption{display:none}
.hero-component figure::after{content:"";position:absolute;top:50%;left:50%;width:4.4rem;height:4.4rem;border-radius:50%;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%237f9152' d='M9 6v12l10-6z'/%3E%3C/svg%3E") 55% 50%/1.8rem no-repeat;box-shadow:0 12px 30px #0003;transform:translate(-50%,-50%)}

/* Inner headings */
.sage-page-head{padding-block:clamp(2.5rem,5vw,4rem);background:linear-gradient(180deg,#efeadc,var(--cream))}
.sage-page-head-grid{display:grid;gap:2rem;align-items:center}.sage-page-head.has-image .sage-page-head-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.sage-page-head h1{max-width:18ch}
.sage-page-head figure{overflow:hidden;border-radius:7rem 1.2rem 1.2rem 1.2rem}.sage-page-head figure img{width:100%;aspect-ratio:16/10;object-fit:cover}
.breadcrumbs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.8rem;color:var(--muted);font-size:.82rem}.breadcrumbs a:hover{color:var(--olive)}
.blog-post-meta{margin-top:.7rem;font-size:.86rem}.blog-post-meta a{color:var(--olive)}

/* Service cards */
.service-list,.native-card-grid,.project-grid,.event-list,.article-list,.team-grid,.testimonial-grid,.blog-grid,.editorial-gallery,.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem}
.service-list{grid-template-columns:repeat(4,minmax(0,1fr))}
.service-list article{position:relative;display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.7rem .7rem 1rem;border:1px solid var(--line);border-radius:1rem;background:var(--card);text-align:center;transition:box-shadow .2s}
.service-list article:hover{box-shadow:0 18px 40px #1d2a2214}
.service-list article>span{display:none}
.service-card-media{width:100%}.service-card-media img{width:100%;aspect-ratio:1;border-radius:.7rem;object-fit:cover}
.service-card-copy{padding:.6rem .4rem 0}.service-card-copy h3{color:var(--forest);font-size:1.1rem}.service-card-copy p{margin-top:.35rem;font-size:.84rem;line-height:1.55}
.service-list article>a{display:grid;place-items:center;width:2.2rem;height:2.2rem;margin-top:auto;border:1px solid var(--line);border-radius:50%;color:var(--forest)}.service-list article>a::after{content:"";position:absolute;inset:0}
.service-section-informative .service-list{grid-template-columns:repeat(3,minmax(0,1fr))}.service-section-informative .service-list article{padding:1.5rem}

/* Tailored services: dark band with three cards */
.feature-section{background:var(--forest) radial-gradient(30rem 20rem at 10% 0,#ffffff0d,transparent 70%)}
.feature-section .section-heading{flex-direction:column;align-items:center;text-align:center}.feature-section .section-heading h2::after{margin-inline:auto}
.feature-section h2{color:#f5f2ea}.feature-section .eyebrow{color:var(--sand)}.feature-section .section-heading>p{color:#c6cfbb}
.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1.1rem}
.feature-grid article{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.8rem 1.4rem;border-radius:1rem;background:var(--card);text-align:center}
.feature-grid article:nth-child(3n+2){background:var(--olive);color:#fff}.feature-grid article:nth-child(3n+2) h3{color:#fff}.feature-grid article:nth-child(3n+2) p{color:#eef1e2}
.feature-grid .card-number{display:none}
.feature-icon{display:grid;place-items:center;width:3.6rem;height:3.6rem;margin-bottom:.4rem;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--forest);font-family:var(--eyivo-font-heading);font-size:1.1rem}
.feature-grid article p{font-size:.88rem}
.feature-grid .text-link{margin-top:.4rem}

/* Chef story */
.image-text-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:stretch;gap:1.2rem}
.image-text figure{position:relative;overflow:hidden;border-radius:1.2rem 5rem 1.2rem 1.2rem}
.image-text figure img{width:100%;height:100%;min-height:22rem;object-fit:cover}
.image-text-image_right figure{order:2;border-radius:5rem 1.2rem 1.2rem 1.2rem}
.image-text-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(1.6rem,4vw,3rem);border-radius:1.2rem;background:#ebe7d5}
.image-text-copy>p:not(.eyebrow){margin-top:1rem}
.image-text figcaption{position:absolute;bottom:1rem;inset-inline-start:1rem;padding:.5rem 1rem;border-radius:999px;background:var(--card);color:var(--forest);font:italic 400 1.15rem/1.2 var(--eyivo-font-heading)}
.image-text-copy .text-link{align-self:flex-start;margin-top:1.3rem;padding:.4rem 1.2rem;border-radius:999px;background:var(--olive);color:#fff;font-size:.82rem}

/* Crafted menus (credentials) */
.credentials-section{padding-block:clamp(3rem,6vw,5rem)}
.credentials-section>.shell>div:first-child{max-width:36rem;margin:0 auto 2rem;text-align:center}
.credentials-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;max-width:44rem;margin-inline:auto}
.credentials-grid article{display:grid;grid-template-columns:auto 1fr;column-gap:.9rem;align-items:center;padding:.9rem 1rem;border-radius:.9rem;background:var(--card);box-shadow:0 8px 22px #1d2a220d}
.credentials-grid article::before{content:"";grid-row:span 2;width:3rem;height:3rem;border:2px solid #f0d7c2;border-radius:50%;background:radial-gradient(circle,#b98d5e 0 .55rem,#f7ead9 .6rem)}
.credentials-grid strong{color:var(--forest);font:400 1.05rem/1.25 var(--eyivo-font-heading)}.credentials-grid span{color:var(--muted);font-size:.8rem}

/* Feast slider on green */
.slider-section{background:var(--forest);text-align:center}
.slider-section .section-heading{flex-direction:column;align-items:center}.slider-section .section-heading h2{color:#f5f2ea}.slider-section .section-heading h2::after{margin-inline:auto}
.slider-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 4rem)/3);gap:2rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-block:.5rem}.slider-track::-webkit-scrollbar{display:none}
.slider-track figure{display:grid;justify-items:center;gap:.9rem;scroll-snap-align:start}
.slider-track img{width:min(100%,13rem);aspect-ratio:1;border:5px solid #ffffff1f;border-radius:50%;object-fit:cover}
.slider-track figcaption{display:grid;gap:.2rem;color:#f5f2ea}.slider-track figcaption strong{font:400 1.15rem/1.2 var(--eyivo-font-heading)}.slider-track figcaption span{color:#c6cfbb;font-size:.84rem}
.slider-controls{display:none;gap:.5rem}.theme-ready .slider-controls{display:flex}
.slider-controls button{display:grid;place-items:center;width:2.6rem;height:2.6rem;border:1px solid #ffffff3d;border-radius:50%;background:transparent;color:#f5f2ea;cursor:pointer}.slider-controls button:hover:not(:disabled){background:var(--sand);color:var(--forest)}.slider-controls button:disabled{opacity:.35;cursor:default}

/* Catalog, projects, events, articles, team, gallery */
.native-card,.project-grid>a,.event-card,.article-list>a,.team-grid article,.blog-card,.testimonial-grid blockquote{position:relative;display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:1rem;background:var(--card);transition:box-shadow .2s}
.native-card:hover,.project-grid>a:hover,.article-list>a:hover,.blog-card:hover{box-shadow:0 18px 40px #1d2a2214}
.native-card img,.project-grid img,.event-card-image img,.blog-card img{width:100%;aspect-ratio:4/3;object-fit:cover}
.native-card>div,.project-grid>a>div,.event-card-content,.blog-card-copy{display:flex;flex:1;flex-direction:column;gap:.45rem;padding:1.2rem 1.3rem 1.4rem}
.native-card>div>span,.project-grid span{color:var(--olive);font-size:.74rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}
.native-card :is(h2,h3),.project-grid h3{color:var(--forest);font-size:1.25rem}.native-card p,.project-grid p{font-size:.88rem}
.native-card b{margin-top:auto;color:var(--forest);font-size:.86rem;font-weight:500}
.collection-section .section-action{display:flex;justify-content:center;margin-top:2rem}
.event-card-meta{display:flex;flex-wrap:wrap;gap:.35rem}.event-card-meta span{padding:.15rem .6rem;border-radius:999px;background:#ebe7d5;color:var(--forest);font-size:.72rem;font-weight:500}
.event-card h3{color:var(--forest);font-size:1.2rem}.event-card-content p{font-size:.86rem}.event-card-location span{margin-inline-end:.3rem;color:var(--olive)}
.event-card-link{margin-top:auto;color:var(--forest);font-size:.86rem;font-weight:500}
.article-list>a{gap:.5rem;padding:1.4rem}.article-list span,.blog-card time{color:var(--olive);font-size:.76rem}.article-list h3,.blog-card h2{color:var(--forest);font-size:1.2rem}.article-list b{margin-top:auto;color:var(--forest);font-size:.86rem}
.team-grid article{align-items:center;padding:1.4rem;text-align:center}
.team-grid-image{width:100%;aspect-ratio:1;margin-bottom:1rem;border-radius:5rem 1rem 1rem 1rem;object-fit:cover}
.team-grid article:not(:has(img))::before{content:"";width:5rem;height:5rem;margin-bottom:1rem;border-radius:50%;background:var(--sage)}
.team-grid h3{color:var(--forest)}.team-grid article>p{color:var(--olive);font-size:.84rem}.team-grid article>span{margin-top:.35rem;color:var(--muted);font-size:.86rem}
.testimonial-grid blockquote{gap:1rem;padding:1.5rem}
.testimonial-grid blockquote::before{content:"“";color:var(--olive);font:400 3rem/.6 var(--eyivo-font-heading)}
.testimonial-grid blockquote>p{color:var(--ink);font:400 1.08rem/1.5 var(--eyivo-font-heading)}
.testimonial-grid footer{display:grid;margin-top:auto;font-size:.86rem}.testimonial-grid footer span{color:var(--muted)}
.editorial-gallery figure,.gallery-grid figure{overflow:hidden;border-radius:1rem;background:var(--card)}
.editorial-gallery img,.gallery-grid img{width:100%;aspect-ratio:1;object-fit:cover}
.editorial-gallery figcaption,.gallery-grid figcaption{display:grid;padding:.8rem 1rem;font-size:.86rem}.editorial-gallery figcaption strong,.gallery-grid figcaption strong{color:var(--forest);font-family:var(--eyivo-font-heading);font-weight:400;font-size:1.05rem}.editorial-gallery figcaption span,.gallery-grid figcaption span{color:var(--muted)}
.sage-gallery-masonry img{aspect-ratio:auto}

/* FAQ in a sage card */
.faq-section>.shell{padding:clamp(1.6rem,4vw,2.6rem);border-radius:1.4rem;background:var(--sage)}
.faq-layout,.lead-form-layout,.contact-details,.location-grid,.hours-layout,.contact-actions,.product-hero-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(1.75rem,4vw,3.25rem)}
.faq-section .eyebrow{color:var(--forest)}
.faq-list{overflow:hidden;border-radius:1rem;background:#fff}
.faq-list details+details{border-top:1px solid var(--line)}
.faq-list summary{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;font-size:.92rem;list-style:none;cursor:pointer}.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary span{flex:none;color:var(--forest);transition:transform .2s}.faq-list details[open] summary span{transform:rotate(45deg)}
.faq-list details p{padding:0 1.2rem 1rem;font-size:.9rem}

/* Forms and contact */
.lead-form{display:grid;gap:1rem;padding:clamp(1.25rem,3vw,1.9rem);border:1px solid var(--line);border-radius:1.2rem;background:var(--card)}
.lead-form label{display:grid;gap:.35rem;font-size:.86rem;font-weight:500}.lead-form small{color:var(--muted);font-weight:400}
.lead-form :is(input,select,textarea),.catalog-toolbar input,.filter-panel input{width:100%;min-height:46px;padding:.7rem 1rem;border:1px solid var(--line);border-radius:.7rem;background:#fff;color:var(--ink)}
.lead-form :is(input,select,textarea):focus,.catalog-toolbar input:focus,.filter-panel input:focus{border-color:var(--olive);outline:3px solid #7f915226;outline-offset:0}
.lead-form input[type=checkbox]{width:1.1rem;min-height:1.1rem;accent-color:var(--forest)}
.lead-form input.honeypot{position:absolute;width:1px;min-height:0;padding:0;border:0}
.lead-form .button{justify-self:start}
.lead-form .eyivo-verification{border-color:var(--line);border-radius:.8rem}.lead-form .eyivo-verification button{border:1px solid var(--line);border-radius:999px;background:#ebe7d5;color:var(--forest)}
.form-error{color:#9b2c2c}.form-success{color:var(--forest)}
.contact-details>div:last-child,.hours-layout dl{display:grid;gap:0;padding:.4rem 1.3rem;border:1px solid var(--line);border-radius:1rem;background:var(--card)}
.contact-details>div:last-child>p{display:grid;gap:.15rem;padding-block:1rem;border-bottom:1px solid var(--line);color:var(--ink);overflow-wrap:anywhere}.contact-details>div:last-child>p:last-child{border:0}
.contact-details span,.contact-actions span{color:var(--olive);font-size:.72rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase}
.hours-layout dl>div{display:flex;justify-content:space-between;gap:1rem;padding-block:.95rem;border-bottom:1px solid var(--line)}.hours-layout dl>div:last-child{border:0}.hours-layout dt{font-family:var(--eyivo-font-heading);font-size:1.05rem}.hours-layout dd{color:var(--olive)}
.contact-actions{padding:clamp(1.5rem,4vw,2.5rem);border-radius:1.2rem;background:var(--forest);color:#f5f2ea}.contact-actions h2{color:#f5f2ea}.contact-actions p{color:#c6cfbb}
.contact-actions>div:last-child{display:grid;gap:.6rem}.contact-actions>div:last-child a{display:grid;padding:.9rem 1.1rem;border-radius:.8rem;background:#ffffff12;overflow-wrap:anywhere}.contact-actions span{color:var(--sand)}
.location-grid{align-items:center}.location-grid>div>p:not(.eyebrow){margin-block:.9rem 1.3rem}
.map-visual{position:relative;display:block;overflow:hidden;border-radius:1.2rem 5rem 1.2rem 1.2rem}.map-visual img{width:100%;aspect-ratio:16/10;object-fit:cover}
.map-visual span{position:absolute;bottom:1rem;inset-inline-start:1rem;padding:.45rem .9rem;border-radius:999px;background:var(--card);color:var(--forest);font-size:.84rem}

/* CTA, announcement, price, specs, downloads, tabs, filter, logos, rich text, video */
.cta-section{padding-block:clamp(3rem,6vw,4.5rem);background:var(--forest);text-align:center}
.cta-section>.shell{display:grid;justify-items:center;gap:.5rem;max-width:42rem}
.cta-section .eyebrow{margin:0;color:var(--sand)}.cta-section h2{color:#f5f2ea}.cta-section p{color:#c6cfbb}.cta-section .button{margin-top:.8rem;border-color:var(--sand);background:var(--sand);color:var(--forest)}
.announcement-panel{padding-block:1rem}
.announcement-panel>.shell{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 2rem;padding:1.1rem 1.5rem;border-radius:1rem;background:#ebe7d5}
.announcement-panel>.shell>span{padding:.2rem .7rem;border-radius:999px;background:var(--olive);color:#fff;font-size:.72rem}.announcement-panel>.shell>div{flex:1 1 20rem}.announcement-panel h2{font-size:1.35rem}
.price-offer{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:1.5rem 2.5rem;padding:clamp(1.6rem,4vw,2.6rem);border-radius:1.4rem;background:var(--card);border:1px solid var(--line)}
.price{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem;margin-top:.8rem}.price strong{color:var(--forest);font:400 2.1rem/1 var(--eyivo-font-heading)}.price span{color:var(--muted);font-size:.86rem}
.price-offer ul{display:grid;gap:.5rem}.price-offer li{display:flex;gap:.6rem;font-size:.9rem}.price-offer li span{color:var(--olive)}
.specs-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:2.5rem}
.specs-layout dl{padding:.4rem 1.3rem;border:1px solid var(--line);border-radius:1rem;background:var(--card)}.specs-layout dl>div{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:1rem;padding-block:.9rem;border-bottom:1px solid var(--line)}.specs-layout dl>div:last-child{border:0}.specs-layout dt{font-family:var(--eyivo-font-heading);font-size:1.05rem}.specs-layout dd{color:var(--muted)}
.download-list{display:grid;gap:.7rem}
.download-list a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.2rem 1rem;padding:1rem 1.2rem;border:1px solid var(--line);border-radius:.9rem;background:var(--card)}.download-list a:hover{border-color:var(--olive)}
.download-list a>span{grid-row:span 2;display:grid;place-items:center;width:2.8rem;height:2.8rem;border-radius:50%;background:#ebe7d5;color:var(--forest);font-size:.64rem;font-weight:600}
.download-list strong{font-family:var(--eyivo-font-heading);font-weight:400;font-size:1.05rem}.download-list small{grid-column:2;color:var(--muted)}.download-list b{grid-column:3;grid-row:1/span 2;color:var(--olive)}
.tabs-component>.shell{text-align:center}
.tab-buttons{display:none;flex-wrap:wrap;justify-content:center;gap:.4rem;margin-block:1.3rem}.theme-ready .tab-buttons{display:flex}
.tab-buttons button,.filter-chips button{min-height:42px;padding:.45rem 1.1rem;border:1px solid var(--forest);border-radius:999px;background:transparent;color:var(--forest);font-size:.86rem;cursor:pointer}
.tab-buttons button[aria-selected=true],.filter-chips button[aria-pressed=true]{background:var(--forest);color:#f5f2ea}
.tabs-component article{max-width:42rem;margin-inline:auto;padding:1.5rem;border-radius:1rem;background:var(--card)}.tabs-component article p{margin-top:.5rem}
.filter-panel{padding-block:2rem}
.filter-panel>.shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:center;gap:1rem 2rem;padding:1.5rem;border-radius:1.2rem;background:#ebe7d5}.filter-panel h2{font-size:1.6rem}
.filter-chips{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.4rem}
.catalog-toolbar{max-width:24rem;margin-bottom:1.8rem}
.logo-cloud{padding-block:2.2rem}
.logo-cloud>.shell{display:grid;justify-items:center;gap:1rem;text-align:center}.logo-cloud p{color:var(--muted);font-size:.86rem;letter-spacing:.12em;text-transform:uppercase}
.logo-cloud>.shell>div{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem 2.6rem}.logo-cloud span{color:var(--forest);font:400 1.4rem/1 var(--eyivo-font-heading)}.logo-cloud img{max-height:2.4rem}
.prose-layout{display:grid;grid-template-columns:minmax(9rem,.28fr) minmax(0,1fr);gap:2.5rem}
.prose-index{display:flex;align-items:center;gap:.7rem;align-self:start;color:var(--olive);font-size:.76rem;letter-spacing:.12em;text-transform:uppercase}.prose-index i{flex:1;height:1px;background:var(--line)}
.prose{max-width:68ch}.prose h2{margin-bottom:.9rem}.prose a{color:var(--forest);text-decoration:underline;text-underline-offset:3px}.prose strong{color:var(--ink);font-weight:600}
.stats-section{padding-block:clamp(2.5rem,5vw,3.5rem)}
.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:1rem;text-align:center}
.stats-grid article{display:grid;gap:.15rem;padding:1.2rem;border-radius:1rem;background:var(--card)}.stats-grid strong{color:var(--forest);font:400 2.2rem/1.1 var(--eyivo-font-heading)}.stats-grid span{font-size:.88rem}.stats-grid small{color:var(--muted);font-size:.76rem}
.video-poster{position:relative;display:block;overflow:hidden;border-radius:1.2rem 6rem 1.2rem 1.2rem}.video-poster img{width:100%;aspect-ratio:16/8;object-fit:cover}
.play-button{position:absolute;top:50%;left:50%;display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.3rem;border-radius:999px;background:#fff;color:var(--forest);font-weight:500;transform:translate(-50%,-50%)}
.video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem}
.video-card{display:grid;gap:1rem;padding:.8rem;border:1px solid var(--line);border-radius:1.1rem;background:var(--card)}.video-card video{width:100%;border-radius:.8rem}.video-card>div{padding:0 .4rem .4rem}.video-card h2{font-size:1.35rem}
.video-placeholder{display:flex;align-items:center;justify-content:center;gap:.8rem;min-height:14rem;border-radius:.8rem;background:var(--forest);color:#f5f2ea}
.play-dot{position:relative;width:2.8rem;height:2.8rem;border-radius:50%;background:var(--sand)}.play-dot::after{content:"";position:absolute;top:50%;left:54%;border-block:7px solid transparent;border-inline-start:11px solid var(--forest);transform:translate(-50%,-50%)}

/* Product, blog */
.product-hero{padding-block:clamp(2.5rem,5vw,4rem);background:linear-gradient(180deg,#efeadc,var(--cream))}
.product-hero-grid{align-items:center}.product-hero .hero-summary{margin-block:.9rem 1.4rem}
.product-hero figure{overflow:hidden;border-radius:7rem 1.2rem 1.2rem 1.2rem}.product-hero figure img{width:100%;aspect-ratio:4/3.3;object-fit:cover}
.blog-category-links,.blog-pagination{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1.8rem}
.blog-category-links a,.blog-pagination a{padding:.4rem 1rem;border:1px solid var(--forest);border-radius:999px;color:var(--forest);font-size:.86rem}.blog-category-links a[aria-current]{background:var(--forest);color:#f5f2ea}
.blog-pagination{margin-top:2rem}.blog-card-copy .text-link{margin-top:auto}
.blog-post{max-width:46rem}.blog-post-lead{margin-bottom:1.5rem;color:var(--ink);font:400 1.35rem/1.45 var(--eyivo-font-heading)}
.blog-post-cover{width:100%;aspect-ratio:16/9;margin-bottom:2rem;border-radius:1.2rem 6rem 1.2rem 1.2rem;object-fit:cover}
.blog-post-body{font-size:1.04rem;line-height:1.85}.blog-post-body>*+*{margin-top:1.1rem}.blog-post-body img{width:100%;border-radius:1rem}.blog-post-body a{color:var(--forest);text-decoration:underline}.blog-post-body h2{font-size:1.6rem}.blog-post-body h3{font-size:1.3rem}

/* Footer */
.site-footer{padding-top:clamp(3rem,6vw,4.5rem);background:var(--forest);color:#c6cfbb}
.sage-footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:2rem;padding-bottom:2.4rem}
.sage-footer-title{max-width:12ch;color:#f5f2ea;font:400 clamp(1.8rem,3vw,2.4rem)/1.1 var(--eyivo-font-heading)}.sage-footer-title .sage-sprig{color:var(--sand)}
.sage-footer-lead>p:not(.sage-footer-title){max-width:30ch;margin-top:1rem;color:#c6cfbb;font-size:.88rem}
.site-footer h2{margin-bottom:.9rem;color:#f5f2ea;font:500 .78rem/1.3 var(--eyivo-font-body);letter-spacing:.12em;text-transform:uppercase}
.sage-footer-grid nav,.sage-footer-grid address{display:flex;flex-direction:column;gap:.45rem;font-size:.88rem;font-style:normal}
.sage-footer-grid a:hover{color:var(--sand)}.sage-footer-grid address p{color:#c6cfbb}
.sage-social{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1rem}.sage-social a{padding:.3rem .8rem;border:1px solid #ffffff2e;border-radius:999px}
.sage-footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem;padding-block:1.2rem;border-top:1px solid #ffffff1f;color:#9aa58f;font-size:.8rem}

@media (max-width:1000px){.service-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:960px){
    .desktop-nav,.header-cta,.locale-switcher{display:none}
    .mobile-menu{position:relative;display:block}
    .mobile-menu>summary{display:flex;align-items:center;min-height:44px;padding:.45rem 1.1rem;border-radius:999px;background:var(--sand);color:var(--forest);font-size:.88rem;list-style:none;cursor:pointer}.mobile-menu>summary::-webkit-details-marker{display:none}
    .mobile-menu>nav{position:absolute;top:calc(100% + .5rem);inset-inline-end:0;display:grid;width:min(18rem,88vw);padding:.45rem;border-radius:.9rem;background:#1e4a36;box-shadow:0 20px 44px #0008}
    .mobile-menu>nav a{display:flex;align-items:center;min-height:44px;padding:.5rem .85rem;border-radius:.5rem}.mobile-menu>nav a[aria-current]{background:#ffffff14;color:var(--sand)}
    .mobile-menu .mobile-cta{justify-content:center;margin-top:.3rem;background:var(--sand);color:var(--forest)}
    .hero-component-grid,.image-text-grid,.faq-layout,.lead-form-layout,.contact-details,.location-grid,.hours-layout,.contact-actions,.product-hero-grid,.specs-layout,.prose-layout,.filter-panel>.shell,.price-offer,.sage-page-head.has-image .sage-page-head-grid{grid-template-columns:1fr}
    .image-text-image_right figure{order:0}
    .native-card-grid,.project-grid,.event-list,.article-list,.team-grid,.testimonial-grid,.blog-grid,.editorial-gallery,.gallery-grid,.video-grid,.service-section-informative .service-list{grid-template-columns:repeat(2,minmax(0,1fr))}
    .slider-track{grid-auto-columns:calc((100% - 2rem)/2)}
    .sage-footer-grid{grid-template-columns:1fr 1fr}
    .price-offer .button{justify-self:start}
}
@media (max-width:600px){
    .service-list,.native-card-grid,.project-grid,.event-list,.article-list,.team-grid,.testimonial-grid,.blog-grid,.editorial-gallery,.gallery-grid,.video-grid,.credentials-grid,.sage-footer-grid,.service-section-informative .service-list{grid-template-columns:1fr}
    .slider-track{grid-auto-columns:80%}
    .hero-component h1{font-size:2.4rem}.hero-component figure{border-radius:6rem 1.2rem 1.2rem 1.2rem}
    .download-list a{grid-template-columns:auto minmax(0,1fr)}.download-list b{display:none}
    .specs-layout dl>div{grid-template-columns:1fr;gap:.2rem}
}
[dir=rtl] .play-button,[dir=rtl] .hero-component figure::after{left:auto;right:50%;transform:translate(50%,-50%)}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
