/* Creative Studio Coffee: espresso-dark hero and bands, latte beige pages, brass accents, uppercase Bodoni headings. */
*,*::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:#1d1611;--muted:#6e6358;--latte:#ede6dc;--paper:#f4efe8;--card:#faf6f0;--line:#d9cfc2;--espresso:var(--second);--roast:#2a2019;--brass:var(--accent);--accent:var(--public-accent,var(--theme-accent,#b8935a));--second:var(--brand-secondary,var(--theme-secondary,#1d1611));--eyivo-color-primary:var(--accent);--eyivo-color-secondary:var(--second);--eyivo-color-text:var(--ink);--eyivo-color-background:var(--latte);--eyivo-font-body:Jost,Arial,sans-serif;--eyivo-font-heading:'Bodoni Moda',Georgia,serif;--eyivo-radius:.4rem;--eyivo-container-width:74rem;--eyivo-nav-menu-bg:#1d1611;--eyivo-nav-menu-text:#efe6d8}
body{min-width:320px;background:var(--latte);color:var(--ink);font:400 .96rem/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:500;line-height:1.1;letter-spacing:.01em;color:var(--ink);text-transform:uppercase;overflow-wrap:anywhere;text-wrap:balance}
h1{font-size:clamp(2.4rem,4.8vw,3.7rem)}h2{font-size:clamp(1.55rem,2.5vw,2.15rem)}h3{font:600 .86rem/1.4 var(--eyivo-font-body);letter-spacing:.08em}
p{color:var(--muted)}p+p,[data-eyivo-rich-text]>*+*{margin-top:.9rem}
:focus-visible{outline:2px solid var(--brass);outline-offset:3px}
.eyebrow{margin-bottom:.6rem;color:var(--muted);font-size:.74rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase}
.section{padding-block:clamp(3rem,6vw,5rem)}
.section-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.6fr);align-items:end;gap:.6rem 2rem;margin-bottom:2rem}
.section-heading h2{max-width:22ch}.section-heading>p{font-size:.9rem}
.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;background:var(--brass);color:var(--espresso);transform:translateY(-220%)}.skip-link:focus{transform:none}
.button,.header-cta{display:inline-flex;align-items:center;justify-content:center;gap:.8rem;min-height:46px;padding:.65rem 1.4rem;border:1px solid var(--brass);border-radius:.15rem;background:var(--brass);color:#fff;font-size:.76rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;transition:background-color .2s,color .2s}
.button::after{content:"→";font-size:.95rem;letter-spacing:0}[dir=rtl] .button::after{content:"←"}.button span{display:none}
.button:hover,.header-cta:hover{background:#9c7a45}
.button-ghost{background:transparent;color:var(--espresso);border-color:var(--espresso)}.button-ghost:hover{background:var(--espresso);color:#fff}
.button-row{display:flex;flex-wrap:wrap;align-items:center;gap:1rem}
.text-link{display:inline-flex;align-items:center;gap:.5rem;min-height:44px;font-size:.76rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.text-link:hover{color:var(--brass)}

/* Header over the dark hero */
.site-header{position:relative;z-index:30;background:var(--espresso);color:#efe6d8}
body:has(.hero-component) .site-header{position:absolute;inset:0 0 auto;background:linear-gradient(180deg,#0e0a07b3,transparent)}
.crema-header{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:92px}
.brand{display:inline-flex;align-items:center;gap:.7rem;white-space:nowrap}
.crema-monogram{width:2.2rem;height:2.2rem;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M4 4h6l12 17V4h6v24h-6L10 11v17H4z'/%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='M4 4h6l12 17V4h6v24h-6L10 11v17H4z'/%3E%3C/svg%3E") center/contain no-repeat}
.crema-wordmark{display:grid}.crema-wordmark strong{font-size:1.05rem;font-weight:600;letter-spacing:.24em;text-transform:uppercase}.crema-wordmark small{font-size:.58rem;letter-spacing:.32em;text-transform:uppercase;opacity:.75}
.desktop-nav{display:flex;align-items:center;gap:.4rem}
.desktop-nav>a,.desktop-nav>.eyivo-navigation-item>a,.more-menu>summary{display:flex;align-items:center;min-height:42px;padding:.4rem .7rem;color:#efe6d8;font-size:.72rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;white-space:nowrap}
.desktop-nav>a:hover,.desktop-nav>a[aria-current],.desktop-nav>.eyivo-navigation-item>a[aria-current]{color:var(--brass)}
.crema-header-end{display:flex;align-items:center;gap:.8rem}
.header-cta{min-height:40px;padding:.45rem 1rem;border-color:#efe6d859;background:transparent;font-size:.68rem;white-space:nowrap}.header-cta:hover{border-color:var(--brass);background:var(--brass)}
.locale-switcher{display:flex;gap:.3rem;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase}.locale-switcher a{padding:.2rem .35rem}.locale-switcher a[aria-current]{color:var(--brass)}
.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:13rem;padding:.4rem;background:var(--roast);box-shadow:0 18px 40px #0009}.more-menu>div>a{padding:.6rem .8rem;font-size:.82rem}.more-menu>div>a:hover{color:var(--brass)}
:root .creative-studio-coffee .site-header .eyivo-navigation-item.eyivo-navigation-parent{border:0;background:transparent;color:#efe6d8}
:root .creative-studio-coffee .site-header .eyivo-navigation-item.eyivo-navigation-parent:is(:hover,:has(>a[aria-current])){background:transparent;color:var(--brass)}
:root .creative-studio-coffee .eyivo-navigation-item .eyivo-navigation-submenu{border-color:#ffffff1a;border-radius:.2rem;background:var(--roast);color:#efe6d8}
:root .creative-studio-coffee .eyivo-navigation-item .eyivo-navigation-submenu>a:is(:hover,[aria-current=page]){background:#ffffff0f;color:var(--brass)}
.mobile-menu{display:none}

/* Hero */
.hero-component{position:relative;overflow:hidden;background:var(--espresso);color:#fff;isolation:isolate}
.hero-component-grid{display:flex;align-items:center;min-height:clamp(34rem,48vw,42rem);padding-block:8rem 4rem}
.hero-component figure{position:absolute;z-index:-1;inset:0}
.hero-component figure img{width:100%;height:100%;object-fit:cover;object-position:70% center}
.hero-component figure::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#120c08f2 0%,#120c08c7 34%,#120c0840 66%,#120c0826 100%)}
[dir=rtl] .hero-component figure::after{background:linear-gradient(270deg,#120c08f2 0%,#120c08c7 34%,#120c0840 66%,#120c0826 100%)}
.hero-component figcaption{display:none}
.hero-component .hero-copy{max-width:36rem}
.hero-component .eyebrow{color:var(--brass)}
.hero-component h1{background:linear-gradient(180deg,#fff calc(100% - 1lh),var(--brass) calc(100% - 1lh));-webkit-background-clip:text;background-clip:text;color:transparent;line-height:1.05}
.hero-component .hero-summary{max-width:38ch;margin-top:1.1rem;color:#d8cdbf}
.hero-component .button-row{margin-top:1.8rem}
.hero-component .text-link{color:#efe6d8}

/* Inner headings */
.page-hero{position:relative;overflow:hidden;padding-block:3.5rem;background:var(--espresso);color:#fff;isolation:isolate}
.page-hero.has-image{padding-block:4.5rem}
.page-hero .hero-backdrop{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover}
.page-hero.has-image::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#120c08f0,#120c0899)}
.page-hero h1{max-width:20ch;color:#fff;font-size:clamp(1.9rem,3.4vw,2.8rem)}
.page-hero p{max-width:42rem;margin-top:.8rem;color:#d8cdbf}
.crema-rule{display:block;width:3rem;height:1px;margin-top:1.2rem;background:var(--brass)}
.breadcrumbs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;color:#b9ab9a;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase}.breadcrumbs a:hover{color:var(--brass)}
.blog-post-meta{margin-top:.8rem;font-size:.82rem}.blog-post-meta a{color:var(--brass)}

/* Value strip (credentials) */
.credentials-section{padding-block:2.4rem}
.credentials-section>.shell>div:first-child{display:none}
.credentials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));padding-bottom:2rem;border-bottom:1px solid var(--line)}
.credentials-grid article{display:grid;justify-items:center;gap:.25rem;padding-inline:.8rem;text-align:center}
.credentials-grid article+article{border-inline-start:1px solid var(--line)}
.credentials-grid article::before{content:"";width:1.8rem;height:1.8rem;margin-bottom:.6rem;border:1.5px solid var(--ink);transform:rotate(45deg) scale(.8);border-radius:.15rem}
.credentials-grid strong{font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.credentials-grid span{color:var(--muted);font-size:.82rem}

/* Project tiles */
.project-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.8rem}
.project-grid>a{position:relative;display:block;min-width:0;overflow:hidden;border-radius:.3rem;background:var(--espresso);isolation:isolate}
.project-grid figure img{width:100%;aspect-ratio:3/4.2;object-fit:cover;filter:saturate(.85);transition:transform .5s}.project-grid>a:hover img{transform:scale(1.05)}
.project-grid>a>div{position:absolute;inset:auto 0 0;display:grid;gap:.15rem;padding:3rem 3rem .9rem .9rem;background:linear-gradient(transparent,#0e0a07e6);color:#fff}
.project-grid>a::after{content:"→";position:absolute;bottom:.8rem;inset-inline-end:.8rem;display:grid;place-items:center;width:1.8rem;height:1.8rem;border:1px solid #ffffff73;border-radius:50%;color:#fff;font-size:.8rem}
[dir=rtl] .project-grid>a::after{content:"←"}
.project-grid h3{color:#fff;font-size:.74rem}.project-grid span{order:2;color:#cfc2b2;font-size:.74rem}.project-grid p{display:none}

/* Story */
.image-text{padding-block:0;background:var(--paper)}
.image-text>.shell{width:100%;max-width:none}
.image-text-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center}
.image-text figure{position:relative;align-self:stretch}
.image-text figure img{width:100%;height:100%;min-height:24rem;object-fit:cover}
.image-text figcaption{position:absolute;bottom:2rem;inset-inline-end:-4.5rem;display:grid;place-items:center;width:9rem;height:9rem;padding:1.2rem;border:1px solid var(--ink);border-radius:50%;outline:8px solid var(--paper);background:var(--paper);color:var(--ink);font:500 .78rem/1.25 var(--eyivo-font-heading);letter-spacing:.12em;text-align:center;text-transform:uppercase}
.image-text-image_right figure{order:2}.image-text-image_right figcaption{inset-inline:-4.5rem auto}
.image-text-copy{max-width:34rem;padding:clamp(2.5rem,6vw,4.5rem) clamp(1.5rem,5vw,6rem)}
.image-text-copy>p:not(.eyebrow){margin-top:1rem}
.image-text-copy .text-link{margin-top:1.4rem;padding:.6rem 1.2rem;background:var(--espresso);color:#fff}.image-text-copy .text-link:hover{background:var(--brass);color:#fff}

/* Catalog services */
.native-card-grid,.service-list,.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}
.native-card,.service-list article,.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:.3rem;background:var(--card);transition:border-color .2s}
.native-card:hover,.article-list>a:hover,.blog-card:hover,.service-list article:hover{border-color:var(--brass)}
.native-card img,.event-card-image img,.blog-card img{width:100%;aspect-ratio:4/3;object-fit:cover}
.native-card>div,.event-card-content,.blog-card-copy{display:flex;flex:1;flex-direction:column;gap:.45rem;padding:1.2rem}
.native-card>div>span{color:var(--brass);font:500 .9rem/1 var(--eyivo-font-heading)}
.native-card :is(h2,h3){font-size:1.05rem}.native-card p{font-size:.88rem}
.native-card b{margin-top:auto;font-size:.72rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}
.collection-section .section-action{display:flex;justify-content:flex-start;margin-top:2rem}
.service-list article{gap:.6rem;padding:1.5rem}
.service-list article>span{color:var(--brass);font:500 1.4rem/1 var(--eyivo-font-heading)}
.service-card-media img{width:100%;aspect-ratio:16/10;border-radius:.2rem;object-fit:cover}
.service-card-copy p{margin-top:.35rem;font-size:.88rem}
.service-list article>a{margin-top:auto}.service-list article>a::after{content:"";position:absolute;inset:0}
.event-card-meta{display:flex;flex-wrap:wrap;gap:.6rem;color:var(--brass);font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.event-card h3{font-family:var(--eyivo-font-heading);font-size:1.05rem;font-weight:500}
.event-card-content p{font-size:.88rem}.event-card-location span{margin-inline-end:.3rem;color:var(--brass)}
.event-card-link{margin-top:auto;font-size:.72rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}
.article-list>a{gap:.55rem;padding:1.4rem}.article-list span,.blog-card time{color:var(--brass);font-size:.7rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.article-list h3{font-family:var(--eyivo-font-heading);font-size:1.05rem;font-weight:500}.article-list b{margin-top:auto;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase}
.team-grid article{padding:.6rem .6rem 1.3rem;text-align:center}
.team-grid-image{width:100%;aspect-ratio:4/4.6;margin-bottom:1rem;object-fit:cover;filter:sepia(.15)}
.team-grid article:not(:has(img))::before{content:"";height:9rem;margin-bottom:1rem;background:var(--espresso)}
.team-grid h3{font-family:var(--eyivo-font-heading);font-size:1rem;font-weight:500}.team-grid article>p{color:var(--brass);font-size:.8rem;letter-spacing:.12em;text-transform:uppercase}.team-grid article>span{margin-top:.4rem;padding-inline:.6rem;color:var(--muted);font-size:.86rem}
.testimonial-grid blockquote{gap:1rem;padding:1.6rem}
.testimonial-grid blockquote::before{content:"“";color:var(--brass);font:500 3rem/.6 var(--eyivo-font-heading)}
.testimonial-grid blockquote>p{color:var(--ink);font:500 1.05rem/1.55 var(--eyivo-font-heading)}
.testimonial-grid footer{display:grid;margin-top:auto;font-size:.84rem}.testimonial-grid footer strong{letter-spacing:.12em;text-transform:uppercase;font-size:.76rem}.testimonial-grid footer span{color:var(--muted)}
.editorial-gallery figure,.gallery-grid figure{position:relative;overflow:hidden;border-radius:.3rem}
.editorial-gallery img,.gallery-grid img{width:100%;aspect-ratio:4/5;object-fit:cover}
.editorial-gallery figcaption,.gallery-grid figcaption{position:absolute;inset:auto 0 0;display:grid;padding:2.5rem 1rem .9rem;background:linear-gradient(transparent,#0e0a07d9);color:#fff;font-size:.82rem}.editorial-gallery figcaption strong,.gallery-grid figcaption strong{letter-spacing:.14em;text-transform:uppercase;font-size:.72rem}.editorial-gallery figcaption span,.gallery-grid figcaption span{color:#d8cdbf}
.crema-gallery-masonry img{aspect-ratio:auto}

/* Slider */
.slider-section .section-heading{grid-template-columns:1fr auto}
.slider-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 2.2rem)/3);gap:1.1rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.slider-track::-webkit-scrollbar{display:none}
.slider-track figure{position:relative;overflow:hidden;border-radius:.3rem;scroll-snap-align:start}.slider-track img{width:100%;aspect-ratio:4/3;object-fit:cover}
.slider-track figcaption{position:absolute;inset:auto 0 0;display:grid;padding:2.5rem 1rem .9rem;background:linear-gradient(transparent,#0e0a07d9);color:#fff;font-size:.82rem}.slider-track figcaption span{color:#d8cdbf}
.slider-controls{display:none;gap:.4rem}.theme-ready .slider-controls{display:flex}
.slider-controls button{display:grid;place-items:center;width:2.6rem;height:2.6rem;border:1px solid var(--ink);border-radius:50%;background:transparent;cursor:pointer}.slider-controls button:hover:not(:disabled){background:var(--espresso);color:#fff}.slider-controls button:disabled{opacity:.35;cursor:default}

/* Feature grid, stats */
.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1.1rem}
.feature-grid article{display:flex;flex-direction:column;gap:.5rem;padding:1.6rem;border-top:2px solid var(--brass);background:var(--card)}
.feature-grid .card-number{color:var(--brass);font:500 1.4rem/1 var(--eyivo-font-heading)}
.feature-icon{display:none}
.feature-grid article p{font-size:.88rem}
.stats-section{padding-block:clamp(2.5rem,5vw,3.5rem);background:var(--espresso);color:#fff}
.stats-section h2{color:#fff}.stats-section .eyebrow{color:var(--brass)}
.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:1rem}
.stats-grid article{display:grid;gap:.15rem;padding-inline-start:1rem;border-inline-start:1px solid #ffffff2e}
.stats-grid strong{color:var(--brass);font:500 2.4rem/1.1 var(--eyivo-font-heading)}.stats-grid span{font-size:.76rem;letter-spacing:.14em;text-transform:uppercase}.stats-grid small{color:#b9ab9a;font-size:.76rem}

/* FAQ */
.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.5rem)}
.faq-list{border-top:1px solid var(--line)}
.faq-list details{border-bottom:1px solid var(--line)}
.faq-list summary{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-block:1.1rem;font-weight:500;list-style:none;cursor:pointer}.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary span{flex:none;color:var(--brass);font-size:1.2rem;transition:transform .2s}.faq-list details[open] summary span{transform:rotate(45deg)}
.faq-list details p{padding-bottom:1.1rem;font-size:.92rem}

/* Membership band (lead form) */
.lead-form-section{position:relative;background:var(--roast) radial-gradient(30rem 20rem at 0 100%,#4a3626,transparent 70%);color:#efe6d8}
.lead-form-section h2{color:#fff}.lead-form-section .eyebrow{color:var(--brass)}.lead-form-section .lead-form-layout>div>p:not(.eyebrow){margin-top:.8rem;color:#c9bcab}
.lead-form{display:grid;gap:.9rem;padding:clamp(1.3rem,3vw,1.8rem);border:1px solid #ffffff1f;border-radius:.3rem;background:#ffffff08}
.lead-form label{display:grid;gap:.3rem;color:#efe6d8;font-size:.84rem;font-weight:500}.lead-form small{color:#a89a89;font-weight:400}
.lead-form :is(input,select,textarea){width:100%;min-height:46px;padding:.7rem .95rem;border:1px solid #ffffff2e;border-radius:.15rem;background:#fffaf2;color:var(--ink)}
.lead-form :is(input,select,textarea):focus{border-color:var(--brass);outline:2px solid #b8935a55;outline-offset:0}
.lead-form input[type=checkbox]{width:1.1rem;min-height:1.1rem;accent-color:var(--brass)}
.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:#ffffff2e;border-radius:.2rem;color:#efe6d8}.lead-form .eyivo-verification img{background:#fff}.lead-form .eyivo-verification button{border:1px solid #ffffff4d;border-radius:.15rem;background:transparent;color:#efe6d8}
.form-error{color:#f4b9a5}.form-success{color:#cfe6b9}
.catalog-toolbar input,.filter-panel input{width:100%;min-height:46px;padding:.7rem .95rem;border:1px solid var(--line);border-radius:.15rem;background:var(--card);color:var(--ink)}
.catalog-toolbar input:focus,.filter-panel input:focus{border-color:var(--brass);outline:none}

/* Contact, hours, map */
.contact-details>div:last-child,.hours-layout dl{display:grid;border-top:1px solid var(--line)}
.contact-details>div:last-child>p{display:grid;grid-template-columns:minmax(6rem,.4fr) 1fr;gap:1rem;padding-block:1.1rem;border-bottom:1px solid var(--line);color:var(--ink);overflow-wrap:anywhere}
.contact-details span,.contact-actions span{color:var(--muted);font-size:.7rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase}
.hours-layout dl>div{display:flex;justify-content:space-between;gap:1rem;padding-block:1rem;border-bottom:1px solid var(--line)}.hours-layout dt{font-weight:500}.hours-layout dd{color:var(--brass)}
.contact-actions{padding:clamp(1.5rem,4vw,2.5rem);background:var(--espresso);color:#fff}.contact-actions h2{color:#fff}.contact-actions p{color:#c9bcab}
.contact-actions>div:last-child{display:grid;gap:.6rem}.contact-actions>div:last-child a{display:grid;padding:.9rem 1.1rem;border:1px solid #ffffff1f;overflow-wrap:anywhere}.contact-actions>div:last-child a:hover{border-color:var(--brass)}.contact-actions span{color:var(--brass)}
.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:.3rem}.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;background:var(--espresso);color:#fff;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase}

/* CTA, announcement, price, specs, downloads, tabs, filter, logos, rich text, video */
.cta-section{padding-block:clamp(3rem,6vw,4.5rem);background:var(--espresso);color:#fff}
.cta-section>.shell{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.5rem 2rem}
.cta-section .eyebrow{grid-column:1/-1;margin:0;color:var(--brass)}.cta-section h2{max-width:24ch;color:#fff}.cta-section p{margin-top:.4rem;color:#c9bcab}.cta-section .button{grid-column:2;grid-row:2/span 2}
.announcement-panel{padding-block:1.4rem;border-block:1px solid var(--line)}
.announcement-panel>.shell{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 2rem}
.announcement-panel>.shell>span{color:var(--brass);font-size:.7rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase}.announcement-panel>.shell>div{flex:1 1 20rem}.announcement-panel h2{font-size:1.15rem}
.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:1px solid var(--line);background:var(--card)}
.price{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem;margin-top:.9rem}.price strong{font:500 2.2rem/1 var(--eyivo-font-heading)}.price span{color:var(--muted);font-size:.84rem}
.price-offer ul{display:grid;gap:.5rem}.price-offer li{display:flex;gap:.6rem;font-size:.9rem}.price-offer li span{color:var(--brass)}
.specs-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:2.5rem}
.specs-layout dl{border-top:1px solid var(--line)}.specs-layout dl>div{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:1rem;padding-block:1rem;border-bottom:1px solid var(--line)}.specs-layout dt{font-size:.76rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.specs-layout dd{color:var(--muted)}
.download-list{display:grid;border-top:1px solid var(--line)}
.download-list a{display:grid;grid-template-columns:4rem minmax(0,1fr) auto;align-items:center;gap:.2rem 1rem;padding-block:1.1rem;border-bottom:1px solid var(--line)}
.download-list a>span{grid-row:span 2;color:var(--brass);font-size:.7rem;font-weight:600;letter-spacing:.16em}.download-list strong{font-family:var(--eyivo-font-heading);font-weight:500;text-transform:uppercase}.download-list small{grid-column:2;color:var(--muted)}.download-list b{grid-column:3;grid-row:1/span 2}
.tab-buttons{display:none;flex-wrap:wrap;gap:.4rem;margin-block:1.3rem}.theme-ready .tab-buttons{display:flex}
.tab-buttons button,.filter-chips button{min-height:42px;padding:.45rem 1rem;border:1px solid var(--ink);border-radius:.15rem;background:transparent;color:var(--ink);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
.tab-buttons button[aria-selected=true],.filter-chips button[aria-pressed=true]{background:var(--espresso);color:#fff}
.tabs-component article{max-width:46rem;padding:1.6rem;border:1px solid var(--line);background:var(--card)}.tabs-component article p{margin-top:.5rem}
.filter-panel{padding-block:2.2rem;background:var(--paper)}
.filter-panel>.shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:center;gap:1rem 2rem}.filter-panel h2{font-size:1.4rem}
.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:2rem;border-block:1px solid var(--line)}
.logo-cloud>.shell{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 2.5rem}.logo-cloud p{color:var(--muted);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase}
.logo-cloud>.shell>div{display:flex;flex-wrap:wrap;gap:.8rem 2.5rem}.logo-cloud span{font:500 1.1rem/1 var(--eyivo-font-heading);letter-spacing:.14em;text-transform:uppercase;color:#4e4339}.logo-cloud img{max-height:2.2rem}
.prose-layout{display:grid;grid-template-columns:minmax(10rem,.3fr) minmax(0,1fr);gap:2.5rem}
.prose-index{display:flex;align-items:center;gap:.8rem;align-self:start;color:var(--muted);font-size:.7rem;letter-spacing:.22em;text-transform:uppercase}.prose-index i{flex:1;height:1px;background:var(--brass)}
.prose{max-width:68ch}.prose h2{margin-bottom:1rem}.prose a{color:var(--brass);text-decoration:underline;text-underline-offset:3px}.prose strong{color:var(--ink)}
.video-poster{position:relative;display:block;overflow:hidden;border-radius:.3rem}.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:.6rem;padding:.8rem 1.4rem;background:var(--brass);color:#fff;font-size:.74rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;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);background:var(--card)}.video-card video{width:100%}.video-card>div{padding:0 .4rem .4rem}.video-card h2{font-size:1.15rem}
.video-placeholder{display:flex;align-items:center;justify-content:center;gap:.8rem;min-height:14rem;background:var(--espresso);color:#fff;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase}
.play-dot{position:relative;width:2.8rem;height:2.8rem;border-radius:50%;background:var(--brass)}.play-dot::after{content:"";position:absolute;top:50%;left:54%;border-block:7px solid transparent;border-inline-start:11px solid #fff;transform:translate(-50%,-50%)}
.crema-body{max-width:68ch}

/* Product, blog */
.product-hero{padding-block:clamp(2.5rem,5vw,4rem);background:var(--espresso);color:#fff}
.product-hero h1{color:#fff;font-size:clamp(1.9rem,3.4vw,2.7rem)}.product-hero .hero-summary{margin-block:.9rem 1.4rem;color:#d8cdbf}.product-hero .eyebrow{color:var(--brass)}
.product-hero-grid{align-items:center}.product-hero figure img{width:100%;aspect-ratio:4/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:.45rem 1rem;border:1px solid var(--ink);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.blog-category-links a[aria-current]{background:var(--espresso);color:#fff}
.blog-pagination{margin-top:2rem}.blog-card h2{font-size:1rem}.blog-card-copy .text-link{margin-top:auto}
.blog-post{max-width:46rem}.blog-post-lead{margin-bottom:1.5rem;color:var(--ink);font:500 1.3rem/1.5 var(--eyivo-font-heading)}
.blog-post-cover{width:100%;aspect-ratio:16/9;margin-bottom: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%}.blog-post-body a{color:var(--brass);text-decoration:underline}.blog-post-body h2{font-size:1.4rem}.blog-post-body h3{font-size:1.1rem}

/* Footer */
.site-footer{padding-top:clamp(3rem,6vw,4rem);background:var(--paper);color:var(--muted)}
.crema-footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:2rem;padding-bottom:2.4rem}
.site-footer .brand{color:var(--ink)}.crema-footer-grid>div>p{max-width:28ch;margin-top:1rem;font-size:.88rem}
.site-footer h2{margin-bottom:.9rem;color:var(--ink);font:600 .7rem/1.3 var(--eyivo-font-body);letter-spacing:.2em}
.crema-footer-grid nav,.crema-footer-grid address{display:flex;flex-direction:column;gap:.45rem;padding-inline-start:1.5rem;border-inline-start:1px solid var(--line);font-size:.86rem;font-style:normal}
.crema-footer-grid a:hover{color:var(--brass)}
.crema-social{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}.crema-social a{padding:.3rem .7rem;border:1px solid var(--line)}
.crema-footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem;padding-block:1.2rem;border-top:1px solid var(--line);font-size:.78rem}

@media (max-width:1100px){.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:960px){
    .desktop-nav,.header-cta,.locale-switcher{display:none}
    body:has(.hero-component) .site-header{background:#0e0a07d9}
    .mobile-menu{position:relative;display:block}
    .mobile-menu>summary{display:flex;align-items:center;min-height:44px;padding:.45rem 1rem;border:1px solid #efe6d859;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;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;background:var(--roast);box-shadow:0 20px 44px #000b}
    .mobile-menu>nav a{display:flex;align-items:center;min-height:44px;padding:.5rem .8rem;font-size:.86rem}.mobile-menu>nav a[aria-current]{color:var(--brass)}
    .mobile-menu .mobile-cta{justify-content:center;margin-top:.3rem;background:var(--brass);color:#fff}
    .hero-component-grid{min-height:34rem;padding-block:7rem 3rem}
    .hero-component figure::after{background:linear-gradient(180deg,#120c08b3,#120c08e6)}
    .section-heading,.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{grid-template-columns:1fr}
    .image-text figcaption,.image-text-image_right figcaption{inset-inline:auto 1rem;bottom:1rem;width:7rem;height:7rem;font-size:.66rem}
    .image-text-image_right figure{order:0}
    .native-card-grid,.service-list,.event-list,.article-list,.team-grid,.testimonial-grid,.blog-grid,.editorial-gallery,.gallery-grid,.video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .credentials-grid article:nth-child(3n+1){border-inline-start:0}
    .slider-track{grid-auto-columns:calc((100% - 1.1rem)/2)}
    .price-offer .button{justify-self:start}
    .cta-section>.shell{grid-template-columns:1fr}.cta-section .button{grid-column:1;grid-row:auto;justify-self:start}
    .crema-footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:600px){
    .project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .native-card-grid,.service-list,.event-list,.article-list,.team-grid,.testimonial-grid,.blog-grid,.editorial-gallery,.gallery-grid,.video-grid,.crema-footer-grid{grid-template-columns:1fr}
    .credentials-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:1.4rem}.credentials-grid article{border:0!important}
    .slider-track{grid-auto-columns:86%}
    .hero-component h1{font-size:2.4rem}
    .crema-footer-grid nav,.crema-footer-grid address{padding-inline-start:0;border:0}
    .download-list a{grid-template-columns:3.5rem minmax(0,1fr)}.download-list b{display:none}
    .contact-details>div:last-child>p,.specs-layout dl>div{grid-template-columns:1fr;gap:.2rem}
}
[dir=rtl] .play-button{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}}
