/*
Theme Name: Alioccsa Folira
Theme URI: https://alioccsa.com/
Author: Alioccsa
Description: Dirección visual orgánica y modular inspirada en portfolios editoriales contemporáneos.
Version: 1.2.2
Text Domain: alioccsa-folira
*/
:root{--paper:#f4f2ed;--white:#fff;--ink:#111827;--muted:#62656b;--blue:#1e3163;--blue-dark:#101b3c;--lime:#bfe118;--amber:#ffbd0f;--line:rgba(17,24,39,.12);--radius:26px;--shadow:0 16px 45px rgba(17,24,39,.12);--sans:"Helvetica Neue",Helvetica,Arial,sans-serif;--ease:cubic-bezier(.2,.75,.25,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;overflow-x:hidden;background:var(--paper);color:var(--ink);font:16px/1.55 var(--sans);text-rendering:optimizeLegibility}body.menu-open{overflow:hidden}img{display:block;max-width:100%}figure{margin:0}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.wrap{width:min(1180px,calc(100% - 48px));margin-inline:auto}.section{padding:clamp(5rem,9vw,9rem) 0}.eyebrow{margin:0;font-size:.7rem;font-weight:750;letter-spacing:.14em;text-transform:uppercase}.lead{font-size:1.1rem}.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip-link{position:fixed;top:-4rem;left:1rem;z-index:9999;padding:.8rem 1rem;background:var(--ink);color:#fff}.skip-link:focus{top:1rem}
.site-header{position:fixed;top:20px;right:0;left:0;z-index:100}.admin-bar .site-header{top:52px}.nav-shell{display:flex;width:min(1180px,calc(100% - 48px));align-items:center;justify-content:space-between;margin:auto;pointer-events:none}.brand,.nav__links{pointer-events:auto;background:rgba(255,255,255,.88);box-shadow:var(--shadow);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.brand{display:flex;align-items:center;gap:.65rem;padding:.45rem .9rem .45rem .5rem;border-radius:18px}.brand img{width:3.3rem;height:2.25rem;border-radius:11px;object-fit:contain;background:var(--blue)}.brand__word{font-size:.82rem;font-weight:800;text-transform:uppercase}.nav__links{display:flex;align-items:center;gap:.2rem;padding:.38rem;border-radius:18px}.nav__links>a{padding:.78rem .9rem;border-radius:13px;font-size:.82rem;font-weight:650;transition:background .25s,color .25s,transform .25s}.nav__links>a:hover{background:rgba(30,49,99,.08);transform:translateY(-1px)}.nav__links .nav__cta{padding-inline:1.15rem;background:var(--ink);color:#fff;box-shadow:0 8px 20px rgba(17,24,39,.22)}.nav__links .nav__cta:hover{background:var(--blue);color:#fff}.menu-toggle{display:none;width:3rem;height:3rem;border:0;border-radius:15px;background:var(--ink);color:#fff;box-shadow:var(--shadow);pointer-events:auto}.menu-toggle i{display:block;width:1.15rem;height:1px;margin:5px auto;background:currentColor}
.button{display:inline-flex;min-height:3.2rem;align-items:center;justify-content:center;gap:1rem;padding:.8rem 1.25rem;border:1px solid transparent;border-radius:13px;font-size:.82rem;font-weight:750;transition:transform .25s var(--ease),box-shadow .25s,background .25s}.button:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(17,24,39,.16)}.button--dark{background:var(--ink);color:#fff}.button--dark:hover{background:var(--blue)}.button--light{background:#fff;color:var(--ink)}.button--outline{border-color:var(--ink);background:transparent}.text-link{display:inline-flex;align-items:center;gap:.8rem;border-bottom:1px solid currentColor;padding:.3rem 0;font-size:.82rem;font-weight:750}.text-link--dark{color:var(--ink)}
.folira-hero{min-height:100svh;padding:clamp(9rem,13vw,12rem) 0 3rem}.folira-hero__grid{display:grid;grid-template-columns:1.02fr .98fr;gap:clamp(3rem,7vw,7rem);align-items:center}.folira-hero__copy h1{margin:1.5rem 0 0;font-size:clamp(3.3rem,7vw,7.3rem);font-weight:450;letter-spacing:-.075em;line-height:.86}.folira-hero__copy h1 strong{font-weight:850}.folira-hero__roles{height:clamp(4.6rem,8vw,7.4rem);margin:.45rem 0 1.75rem;overflow:hidden;font-size:clamp(2.2rem,4.6vw,4.9rem);font-weight:780;letter-spacing:-.065em;line-height:1}.folira-hero__roles span{display:block;height:100%;animation:roleCycle 9s infinite var(--ease)}.folira-hero__copy .lead{max-width:35rem;margin:0 0 2rem;color:var(--muted)}.folira-hero__gallery{display:grid;grid-template-columns:1.45fr .85fr;grid-template-rows:auto auto;gap:1rem;align-items:end}.folira-hero__gallery figure{position:relative;overflow:hidden;border-radius:var(--radius);background:#ddd}.folira-hero__gallery img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.folira-hero__gallery figure:hover img{transform:scale(1.04)}.folira-hero__portrait{grid-row:1/3;height:38rem}.folira-hero__detail{height:18rem}.folira-hero__gallery figcaption{position:absolute;right:.75rem;bottom:.75rem;left:.75rem;padding:.65rem .75rem;border-radius:10px;background:rgba(255,255,255,.86);font-size:.68rem;font-weight:750;backdrop-filter:blur(10px)}.folira-hero__trust{display:flex;min-height:8rem;flex-direction:column;justify-content:center;padding:1.1rem;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.folira-hero__trust strong{font-size:1.15rem}.folira-hero__trust span{color:var(--muted);font-size:.75rem}.trust-dots{display:flex;margin-bottom:.65rem}.trust-dots i{width:1.75rem;height:1.75rem;margin-right:-.4rem;border:3px solid #fff;border-radius:50%;background:var(--blue)}.trust-dots i:nth-child(2){background:var(--lime)}.trust-dots i:nth-child(3){background:var(--amber)}.trust-dots i:nth-child(4){background:#e95757}.trust-dots i:nth-child(5){background:#6bb8c7}.client-ribbon{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:4rem;padding-top:1.5rem;border-top:1px solid var(--line);color:var(--muted);font-size:.72rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase}.client-ribbon i{width:5px;height:5px;border-radius:50%;background:var(--blue)}
@keyframes roleCycle{0%,26%{transform:translateY(0)}33%,59%{transform:translateY(-100%)}66%,92%{transform:translateY(-200%)}100%{transform:translateY(0)}}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:3rem;margin-bottom:3rem}.section-heading h2{max-width:14ch;margin:.7rem 0 0;font-size:clamp(2.7rem,5vw,5rem);font-weight:720;letter-spacing:-.065em;line-height:.95}.section-heading>p{max-width:26rem;margin:0;color:var(--muted)}.selected-materials{background:#eceae4}.material-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;margin-bottom:2rem}.material-card{display:block}.material-card__media{position:relative;height:34rem;overflow:hidden;border-radius:var(--radius);background:var(--blue)}.material-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease),filter .5s}.material-card:nth-child(2) .material-card__media,.material-card:nth-child(3) .material-card__media{background:var(--lime)}.material-card__media p{position:absolute;right:1rem;bottom:1rem;left:1rem;margin:0;padding:1rem;border-radius:14px;background:rgba(17,24,39,.78);color:#fff;font-size:.82rem;opacity:0;transform:translateY(10px);transition:.4s var(--ease);backdrop-filter:blur(10px)}.material-card:hover .material-card__media img{transform:scale(1.045)}.material-card:hover .material-card__media p{opacity:1;transform:none}.material-card__meta{display:flex;align-items:start;justify-content:space-between;gap:1rem;padding:1rem .25rem 2rem}.material-card__meta h3{max-width:22rem;margin:0;font-size:1.3rem;letter-spacing:-.035em}.material-card__meta span{color:var(--muted);font-size:.72rem;font-weight:700;text-transform:uppercase}
.about-home{background:#fff}.about-home__grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(3rem,9vw,9rem);align-items:center}.about-home__identity figure{height:28rem;overflow:hidden;border-radius:var(--radius)}.about-home__identity img{width:100%;height:100%;object-fit:cover}.about-home__identity h2{margin:1.2rem 0 0;font-size:2rem;letter-spacing:-.05em}.about-home__identity>p{margin:.2rem 0;color:var(--muted);font-size:.78rem;text-transform:uppercase}.about-home__story h2{margin:1rem 0 1.5rem;font-size:clamp(2.2rem,4.2vw,4.5rem);font-weight:600;letter-spacing:-.06em;line-height:1}.about-home__story>p:not(.eyebrow){max-width:44rem;color:var(--muted)}
.journey{background:var(--paper)}.journey__grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(3rem,9vw,9rem)}.journey__intro{position:sticky;top:9rem;height:max-content}.journey__intro h2{margin:1rem 0;font-size:clamp(2.7rem,5vw,5rem);letter-spacing:-.07em;line-height:.92}.journey__intro>p:not(.eyebrow){max-width:28rem;color:var(--muted)}.journey-row{display:grid;grid-template-columns:7rem 1fr;gap:2rem;padding:2rem 0;border-top:1px solid var(--line)}.journey-row>span{font-size:.75rem;font-weight:750}.journey-row h3{margin:0 0 .65rem;font-size:1.7rem;letter-spacing:-.04em}.journey-row p{max-width:36rem;margin:0;color:var(--muted)}
.service-cards{background:#fff}.service-cards__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.service-card{position:relative;display:flex;min-height:33rem;flex-direction:column;padding:1.5rem;border-radius:var(--radius);overflow:hidden}.service-card>span,.service-card strong{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase}.service-card h3{margin:auto 0 1rem;font-size:clamp(2rem,3vw,3.3rem);letter-spacing:-.06em;line-height:.95}.service-card p{margin:0 0 1.5rem}.service-card strong{margin-top:auto}.service-card--blue{background:var(--blue);color:#fff}.service-card--lime{background:var(--lime)}.service-card--image{justify-content:end;padding:0;background:var(--ink);color:#fff}.service-card--image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.service-card--image:after{position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(17,24,39,.92));content:""}.service-card--image div{position:relative;z-index:1;padding:1.5rem}.service-card--image:hover img{transform:scale(1.05)}
.contact-preview{background:#fff}.contact-preview__card{display:flex;min-height:28rem;align-items:end;justify-content:space-between;gap:3rem;padding:clamp(2rem,5vw,5rem);border-radius:var(--radius);background:var(--blue);color:#fff}.contact-preview__card h2{max-width:15ch;margin:.8rem 0 1rem;font-size:clamp(3rem,6vw,6.3rem);letter-spacing:-.075em;line-height:.88}.contact-preview__card p:not(.eyebrow){max-width:38rem;color:rgba(255,255,255,.7)}
.page-hero{padding:clamp(10rem,15vw,14rem) 0 clamp(5rem,8vw,8rem);background:var(--paper)}.page-hero__meta{display:flex;justify-content:space-between;margin-bottom:clamp(4rem,9vw,8rem);font-size:.72rem;font-weight:700;text-transform:uppercase}.page-hero__meta p{margin:0}.page-hero__title{display:grid;grid-template-columns:1.4fr .6fr;gap:4rem;align-items:end}.page-hero__title h1{margin:0;font-size:clamp(4rem,10vw,10rem);font-weight:800;letter-spacing:-.085em;line-height:.73;text-transform:uppercase}.page-hero__title h1 em{display:block;margin-top:.22em;font-family:Georgia,serif;font-size:.48em;font-weight:400;letter-spacing:-.025em;line-height:1;word-spacing:.16em;text-transform:none}.page-hero__title>p{max-width:28rem;margin:0;font-size:1.05rem}.page-hero--lime{background:var(--lime)}.page-hero--amber{background:var(--amber)}.page-hero--blue{background:var(--blue);color:#fff}.page-hero--contact{background:var(--blue-dark);color:#fff}
.statement__grid{display:grid;grid-template-columns:.35fr 1.65fr;gap:3rem}.statement__grid h2{max-width:19ch;margin:0;font-size:clamp(2.8rem,6vw,6rem);font-weight:600;letter-spacing:-.07em;line-height:.98}.about-visual{padding:0 0 8rem;background:#fff}.about-visual__grid{position:relative;min-height:45rem}.about-visual figure{overflow:hidden;border-radius:var(--radius);box-shadow:var(--shadow)}.about-visual img{width:100%;height:100%;object-fit:cover}.about-visual__wide{position:absolute;inset:0 16% 5rem 0}.about-visual__inset{position:absolute;right:0;bottom:0;width:40%;height:28rem;border:10px solid var(--paper)}.about-visual figcaption,.history-image figcaption{display:flex;justify-content:space-between;gap:1rem;padding:.8rem 1rem;background:#fff;font-size:.68rem;font-weight:750;text-transform:uppercase}.dual-editorial{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.section--white{background:#fff}.section--blue{background:var(--blue);color:#fff}.editorial-card{display:flex;min-height:38rem;flex-direction:column;padding:2rem;border-radius:var(--radius);background:var(--amber)}.editorial-card--blue{background:var(--blue);color:#fff}.editorial-card>span{align-self:end}.editorial-card h2{margin:auto 0 1rem;font-size:clamp(2.7rem,5vw,5rem);letter-spacing:-.07em;line-height:.9}.editorial-card p:last-child{max-width:36rem}.section-kicker{display:grid;grid-template-columns:.35fr 1.2fr .45fr;gap:2rem;align-items:end;margin-bottom:3rem}.section-kicker h2{margin:0;font-size:clamp(2.8rem,5vw,5.5rem);letter-spacing:-.07em;line-height:.92}.values-list{border-top:1px solid var(--line)}.value-line{display:grid;grid-template-columns:5rem .6fr 1fr;gap:2rem;padding:2rem 0;border-bottom:1px solid var(--line)}.value-line h3{margin:0;font-size:1.7rem}.value-line p{max-width:42rem;margin:0;color:var(--muted)}.policy-section{background:var(--blue);color:#fff}.policy-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:5rem;align-items:center}.policy-layout__mark{display:flex;aspect-ratio:1;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--lime);border-radius:50%;color:var(--lime)}.policy-layout__mark strong{font-size:2.4rem}.policy-layout__copy h2{margin:1rem 0 2rem;font-size:clamp(3rem,6vw,6rem);letter-spacing:-.07em;line-height:.9}.policy-layout__copy p:not(.eyebrow){color:rgba(255,255,255,.72)}
.history-image{width:min(1180px,calc(100% - 48px));margin:0 auto 7rem;padding:12px;border-radius:var(--radius);background:var(--blue);box-shadow:var(--shadow);overflow:hidden}.history-image img{width:100%;max-height:42rem;border-radius:18px;object-fit:cover}.history-image figcaption{background:transparent;color:#fff}.history-image figcaption span{color:var(--lime)}.history-chapter{display:grid;grid-template-columns:.55fr 1.45fr;gap:4rem;padding:5rem 0;border-bottom:1px solid rgba(255,255,255,.18)}.history-chapter__year{position:sticky;top:9rem;height:max-content;color:var(--lime);font-size:clamp(3.5rem,8vw,8rem);font-weight:800;letter-spacing:-.08em;line-height:.8}.history-chapter__copy h2{max-width:14ch;margin:1rem 0 2rem;font-size:clamp(2.8rem,5vw,5.2rem);letter-spacing:-.07em;line-height:.95}.history-chapter__copy p:last-child{color:rgba(255,255,255,.72)}
.product-stories{padding-top:0}.product-story{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(3rem,8vw,8rem);align-items:center;padding:5rem 0;border-top:1px solid var(--line)}.product-story:nth-child(even) .product-story__media{order:2}.product-story__media{position:relative;height:34rem;overflow:hidden;border-radius:var(--radius);background:var(--blue)}.product-story__media>span{position:absolute;top:1rem;left:1rem;z-index:1;padding:.5rem .7rem;border-radius:10px;background:#fff;font-size:.7rem;font-weight:750}.product-story__media img{width:100%;height:100%;object-fit:cover}.product-story__copy h2{margin:.8rem 0 1.5rem;font-size:clamp(2.6rem,5vw,5rem);letter-spacing:-.07em;line-height:.92}.product-story__copy p:not(.eyebrow){color:var(--muted)}
.contact-visual{padding:7rem 0;background:#fff}.contact-visual__canvas{display:grid;grid-template-columns:.6fr 1fr .75fr;gap:1rem;align-items:end}.contact-visual__intro{align-self:start;padding-top:2rem}.contact-visual__intro h2{margin:.8rem 0;font-size:clamp(2.8rem,5vw,5rem);letter-spacing:-.07em;line-height:.92}.contact-visual__intro>p:last-child{color:var(--muted)}.contact-visual figure{padding:.7rem;border-radius:var(--radius);box-shadow:var(--shadow)}.contact-visual figure>div{height:31rem;overflow:hidden;border-radius:19px}.contact-visual figure img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.contact-visual figure:hover img{transform:scale(1.04)}.contact-visual figcaption{display:flex;justify-content:space-between;padding:.8rem .2rem .15rem;font-size:.66rem;font-weight:750;text-transform:uppercase}.contact-visual__primary{background:var(--blue);color:#fff}.contact-visual__secondary{background:var(--lime)}.contact-visual__secondary>div{height:24rem!important}.contact-section{background:var(--lime)}.contact-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:6rem}.contact-layout__intro h2{margin:1rem 0 2rem;font-size:clamp(3rem,6vw,6rem);letter-spacing:-.075em;line-height:.9}.contact-layout__details a{display:grid;grid-template-columns:9rem 1fr auto;gap:1rem;padding:1.5rem 0;border-top:1px solid rgba(17,24,39,.28)}.contact-layout__details span{font-size:.7rem;font-weight:750;text-transform:uppercase}.contact-layout__details strong{font-weight:600}.contact-form-section{background:#fff}.contact-form-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:6rem}.contact-form-grid h2{margin:1rem 0;font-size:clamp(2.8rem,5vw,5rem);letter-spacing:-.07em;line-height:.95}.contact-form{padding:2rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.field{display:grid;gap:.4rem;margin-bottom:1.5rem}.field label{font-size:.7rem;font-weight:750;text-transform:uppercase}.field input,.field textarea{width:100%;border:0;border-bottom:1px solid var(--ink);border-radius:0;background:transparent;padding:.8rem 0;color:var(--ink)}.field textarea{min-height:8rem;resize:vertical}.field--hidden{position:absolute;left:-10000px}.form-privacy{color:var(--muted);font-size:.72rem}.notice{margin-bottom:1rem;padding:1rem;border-radius:12px;background:var(--lime)}.notice--error{background:#ffd8d8}
.single-product-hero{padding:11rem 0 6rem}.single-product-hero__grid{display:grid;grid-template-columns:1fr .75fr;gap:6rem;align-items:center}.single-product-hero__copy h1{margin:1rem 0;font-size:clamp(3.5rem,7vw,7rem);letter-spacing:-.08em;line-height:.86}.single-product-hero figure{height:38rem;overflow:hidden;border-radius:var(--radius);background:var(--blue);box-shadow:var(--shadow)}.single-product-hero figure img{width:100%;height:100%;object-fit:cover}.product-detail{background:#fff}.product-detail__grid{display:grid;grid-template-columns:.5fr 1.5fr;gap:4rem}.product-detail__code{display:block;margin-top:1rem;font-size:3rem;font-weight:800}.product-detail__prose{max-width:52rem;font-size:1.05rem}.product-detail__prose p{color:var(--muted)}.product-pagination{display:flex;justify-content:space-between;padding-block:2rem 5rem;font-size:.8rem;font-weight:750}
.final-cta{background:#fff}.final-cta__grid{display:grid;grid-template-columns:.3fr 1.35fr .35fr;gap:3rem;align-items:center;padding:3rem;border-radius:var(--radius);background:var(--blue);color:#fff}.final-cta h2{margin:0;font-size:clamp(2.8rem,5vw,5rem);letter-spacing:-.07em;line-height:.92}.round-link{display:flex;width:8rem;aspect-ratio:1;flex-direction:column;align-items:center;justify-content:center;border-radius:50%;background:var(--amber);color:var(--ink);font-size:.75rem;font-weight:750;text-align:center}.round-link i{font-style:normal}
.site-footer{padding:7rem 0 2rem;background:var(--ink);color:#fff}.footer-callout{display:grid;grid-template-columns:.45fr 1.55fr;gap:2rem;align-items:start;padding-bottom:5rem;border-bottom:1px solid rgba(255,255,255,.16)}.footer-callout p{margin:0;font-size:.75rem;text-transform:uppercase}.footer-callout a{display:flex;justify-content:space-between;font-size:clamp(3.5rem,8vw,8rem);font-weight:700;letter-spacing:-.08em;line-height:.8}.footer-callout a span{color:var(--lime)}.footer-grid{display:grid;grid-template-columns:1.5fr .5fr .7fr;gap:4rem;padding-top:4rem}.footer-brand .brand{display:inline-flex;margin-bottom:1.5rem;background:#fff;color:var(--ink);box-shadow:none}.footer-brand p{max-width:35rem;color:rgba(255,255,255,.58)}.footer-title{margin:0 0 1rem;color:var(--lime);font-size:.7rem;font-weight:750;text-transform:uppercase}.footer-links{display:grid;gap:.55rem;color:rgba(255,255,255,.75);font-size:.82rem}.footer-links a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;margin-top:4rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.16);color:rgba(255,255,255,.46);font-size:.7rem}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .75s ease,transform .85s var(--ease)}.reveal.is-visible{opacity:1;transform:none}
@media(max-width:900px){.wrap,.nav-shell{width:min(100% - 30px,720px)}.site-header{top:12px}.admin-bar .site-header{top:58px}.nav__links{position:fixed;top:78px;right:15px;left:15px;display:grid;gap:.25rem;padding:.75rem;opacity:0;pointer-events:none;transform:translateY(-12px);transition:.3s var(--ease)}.admin-bar .nav__links{top:122px}.nav__links.is-open{opacity:1;pointer-events:auto;transform:none}.nav__links>a{padding:1rem}.menu-toggle{display:block}.folira-hero__grid,.about-home__grid,.journey__grid,.page-hero__title,.statement__grid,.policy-layout,.contact-layout,.contact-form-grid,.single-product-hero__grid,.product-detail__grid{grid-template-columns:1fr}.folira-hero__gallery{margin-top:2rem}.folira-hero__portrait{height:34rem}.client-ribbon{flex-wrap:wrap;justify-content:center}.material-card__media{height:27rem}.service-cards__grid{grid-template-columns:1fr}.service-card{min-height:26rem}.journey__intro{position:static}.section-heading{align-items:start;flex-direction:column}.page-hero__title{gap:2rem}.about-visual__grid{min-height:38rem}.contact-visual__canvas{grid-template-columns:1fr 1fr}.contact-visual__intro{grid-column:1/-1}.contact-visual figure>div{height:25rem}.contact-layout,.contact-form-grid{gap:3rem}.final-cta__grid{grid-template-columns:1fr}.footer-callout,.footer-grid{grid-template-columns:1fr}.history-chapter{grid-template-columns:1fr}.history-chapter__year{position:static}.section-kicker{grid-template-columns:1fr}.value-line{grid-template-columns:3rem 1fr}.value-line p{grid-column:2}.product-story{grid-template-columns:1fr}.product-story:nth-child(even) .product-story__media{order:0}}
@media(max-width:620px){.wrap,.nav-shell{width:calc(100% - 24px)}.brand{padding-right:.6rem}.brand__word{display:none}.folira-hero{padding-top:8rem}.folira-hero__copy h1{font-size:3.65rem}.folira-hero__roles{height:4.8rem;font-size:2.35rem}.folira-hero__gallery{grid-template-columns:1fr 1fr}.folira-hero__portrait{height:27rem}.folira-hero__trust{min-height:7rem;padding:.8rem}.folira-hero__detail{height:14rem}.client-ribbon{margin-top:2.5rem}.material-cards,.dual-editorial{grid-template-columns:1fr}.material-card__media{height:24rem}.about-home__identity figure{height:22rem}.journey-row{grid-template-columns:4rem 1fr;gap:1rem}.contact-preview__card{align-items:start;flex-direction:column}.page-hero{padding-top:9rem}.page-hero__meta{margin-bottom:3rem}.page-hero__title h1{font-size:3.8rem}.about-visual__grid{display:grid;min-height:auto;gap:1rem}.about-visual__wide,.about-visual__inset{position:relative;inset:auto;width:auto;height:24rem}.about-visual__inset{border:0}.contact-visual__canvas{grid-template-columns:1fr}.contact-visual__intro{grid-column:auto}.contact-visual__secondary>div,.contact-visual figure>div{height:22rem!important}.form-row{grid-template-columns:1fr}.product-story__media{height:25rem}.single-product-hero figure{height:28rem}.footer-callout a{font-size:3.5rem}.footer-bottom{flex-direction:column}.editorial-card{min-height:32rem}.policy-layout{gap:3rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.folira-hero__roles span{animation:none}.folira-hero__roles span:not(:first-child){display:none}.reveal{opacity:1;transform:none;transition:none}.material-card__media img,.service-card--image img,.contact-visual figure img{transition:none}}

/* Hero role text stays on one deliberate line across animation states. */
.folira-hero__roles{height:clamp(2.5rem,4vw,3.5rem);margin:.8rem 0 2rem;font-size:clamp(1.75rem,2.8vw,2.9rem);letter-spacing:-.055em;line-height:1.05;white-space:nowrap}
@media(max-width:620px){.folira-hero__roles{height:2.5rem;font-size:1.75rem}}

/* Folira internal-page system */
.brand{padding:.35rem .55rem}.brand img{width:5.4rem;height:3.55rem;border-radius:0;background:transparent;object-fit:contain}.footer-brand .brand{padding:.45rem .7rem}.footer-brand .brand img{width:7rem;height:4.5rem}
.inner-hero{min-height:100svh;padding:clamp(9rem,13vw,12rem) 0 4rem}.inner-hero--lime{background:var(--lime)}.inner-hero--amber{background:var(--amber)}.inner-hero--blue{background:var(--blue);color:#fff}.inner-hero--contact{background:var(--blue-dark);color:#fff}.inner-hero__grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:clamp(3rem,7vw,7rem);align-items:center}.inner-hero__copy h1{margin:1.5rem 0 2rem;font-size:clamp(4rem,8vw,8.5rem);font-weight:480;letter-spacing:-.08em;line-height:.8}.inner-hero__copy h1 strong{display:block;font-family:Georgia,serif;font-size:.58em;font-weight:400;letter-spacing:-.035em;line-height:1;word-spacing:.12em}.inner-hero__copy>p:last-child{max-width:35rem;font-size:1.05rem}.inner-hero__media{position:relative;display:grid;grid-template-columns:1fr 9rem;gap:1rem;align-items:end}.inner-hero__media figure{position:relative;height:39rem;overflow:hidden;border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.inner-hero__media figure img{width:100%;height:100%;object-fit:cover}.inner-hero__media figure figcaption{position:absolute;right:.8rem;bottom:.8rem;left:.8rem;padding:.75rem;border-radius:12px;background:rgba(255,255,255,.88);color:var(--ink);font-size:.7rem;font-weight:750;backdrop-filter:blur(10px)}.floating-badge{display:flex;min-height:10rem;flex-direction:column;justify-content:center;padding:1rem;border-radius:var(--radius);background:#fff;color:var(--ink);box-shadow:var(--shadow)}.floating-badge span{font-size:1.5rem;font-weight:850}.floating-badge strong{font-size:.82rem}.floating-badge small{color:var(--muted)}.floating-badge--dark{background:var(--ink);color:#fff}.floating-badge--dark small{color:rgba(255,255,255,.65)}.floating-badge--lime{background:var(--lime);color:var(--ink)}.inner-hero__media--products figure img{object-fit:cover}.inner-hero__media--contact figure img{object-fit:cover}
.folira-statement{background:#fff}.folira-statement__grid{display:grid;grid-template-columns:.3fr 1.2fr .5fr;gap:3rem;align-items:start}.folira-statement h2{margin:0;font-size:clamp(2.8rem,5vw,5.6rem);font-weight:600;letter-spacing:-.07em;line-height:.96}.folira-statement__grid>p:last-child{margin:0;color:var(--muted)}
.company-gallery{padding-top:0;background:#fff}.company-gallery__grid{display:grid;grid-template-columns:1.35fr .65fr;gap:1rem}.company-gallery__main{overflow:hidden;border-radius:var(--radius);background:var(--paper)}.company-gallery__main img{width:100%;height:38rem;object-fit:cover}.company-gallery figcaption,.contact-showcase figcaption{display:flex;justify-content:space-between;padding:1rem;font-size:.7rem;font-weight:750;text-transform:uppercase}.company-gallery__facts{display:grid;gap:1rem}.company-gallery__facts article{display:flex;min-height:11rem;flex-direction:column;justify-content:end;padding:1.4rem;border-radius:var(--radius);background:var(--paper)}.company-gallery__facts article:nth-child(2){background:var(--blue);color:#fff}.company-gallery__facts article:nth-child(3){background:var(--lime)}.company-gallery__facts strong{font-size:3rem;letter-spacing:-.06em}.company-gallery__facts span{font-size:.78rem}
.purpose-section{background:var(--paper)}.purpose-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.purpose-card{display:flex;min-height:38rem;flex-direction:column;padding:2rem;border-radius:var(--radius)}.purpose-card--amber{background:var(--amber)}.purpose-card--blue{background:var(--blue);color:#fff}.purpose-card>span{font-size:.7rem;font-weight:750;text-transform:uppercase}.purpose-card h3{margin:auto 0 1.5rem;font-size:clamp(3rem,5vw,5.5rem);letter-spacing:-.075em;line-height:.88}.purpose-card p{max-width:42rem;margin:0}.principles{background:#fff}.principles__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.principle-card{min-height:20rem;padding:1.5rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}.principle-card span{font-size:.7rem;font-weight:750}.principle-card h3{margin:5rem 0 1rem;font-size:2.2rem;letter-spacing:-.05em}.principle-card p{color:var(--muted)}.quality-policy{background:#fff}.quality-policy__card{display:grid;grid-template-columns:.55fr 1.45fr;gap:clamp(3rem,7vw,7rem);padding:clamp(2rem,5vw,5rem);border-radius:var(--radius);background:var(--blue);color:#fff}.quality-policy__seal{display:flex;aspect-ratio:1;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--lime);border-radius:50%;color:var(--lime)}.quality-policy__seal strong{font-size:clamp(2.5rem,5vw,5rem);letter-spacing:-.07em}.quality-policy__card article h2{margin:1rem 0 2rem;font-size:clamp(3rem,5vw,5rem);letter-spacing:-.07em;line-height:.92}.quality-policy__card article p:not(.eyebrow){color:rgba(255,255,255,.72)}
.timeline-cards{background:var(--paper)}.timeline-cards__grid{display:grid;gap:1rem}.timeline-card{display:grid;grid-template-columns:.35fr 1.65fr;gap:3rem;min-height:30rem;padding:clamp(2rem,5vw,4rem);border-radius:var(--radius)}.timeline-card__meta{display:flex;flex-direction:column;justify-content:space-between}.timeline-card__meta span{font-size:.72rem;font-weight:750}.timeline-card__meta strong{font-size:clamp(3.5rem,7vw,7rem);letter-spacing:-.08em;line-height:.8}.timeline-card h2{max-width:15ch;margin:1rem 0 2rem;font-size:clamp(3rem,5vw,5.5rem);letter-spacing:-.075em;line-height:.9}.timeline-card p:last-child{max-width:54rem}.timeline-card--origin{background:#fff}.timeline-card--chapter{background:var(--blue);color:#fff}.timeline-card--chapter p:last-child{color:rgba(255,255,255,.72)}.timeline-card--future{background:var(--lime)}.timeline-card--today{background:var(--amber)}.story-ending{background:#fff}.story-ending__card{display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border-radius:var(--radius);background:var(--ink);color:#fff}.story-ending figure{min-height:34rem}.story-ending img{width:100%;height:100%;object-fit:cover}.story-ending__card>div{display:flex;flex-direction:column;justify-content:center;padding:clamp(2rem,5vw,5rem)}.story-ending h2{margin:1rem 0 2rem;font-size:clamp(3rem,5vw,5rem);letter-spacing:-.07em;line-height:.9}
.catalogue{padding-top:0;background:#fff}.catalogue__grid{display:grid;gap:1rem}.catalogue-card{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,6vw,6rem);align-items:center;padding:2rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}.catalogue-card:nth-child(even) .catalogue-card__media{order:2}.catalogue-card__media{position:relative;height:34rem;overflow:hidden;border-radius:20px}.catalogue-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.catalogue-card__media:hover img{transform:scale(1.04)}.catalogue-card__media span{position:absolute;top:1rem;left:1rem;padding:.55rem .7rem;border-radius:10px;background:#fff;font-size:.68rem;font-weight:750}.catalogue-card__copy h2{margin:0 0 1.2rem;font-size:clamp(2.6rem,4.7vw,5rem);letter-spacing:-.07em;line-height:.92}.catalogue-card__copy>p{color:var(--muted)}.catalogue-card__lead{font-size:1.1rem;color:var(--ink)!important}
.contact-showcase{background:#fff}.contact-showcase__grid{display:grid;grid-template-columns:1.15fr .85fr;gap:1rem;align-items:end}.contact-showcase figure{padding:.7rem;border-radius:var(--radius);box-shadow:var(--shadow)}.contact-showcase figure:first-child{background:var(--blue);color:#fff}.contact-showcase figure:last-child{background:var(--lime)}.contact-showcase img{width:100%;height:38rem;border-radius:19px;object-fit:cover}.contact-showcase figure:last-child img{height:29rem}.contact-hub{background:var(--lime)}.contact-hub__grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(3rem,8vw,8rem)}.contact-hub__intro h2{margin:1rem 0 2rem;font-size:clamp(3rem,6vw,6rem);letter-spacing:-.075em;line-height:.9}.contact-methods{display:grid;gap:.75rem}.contact-methods a{display:grid;grid-template-columns:2rem 1fr auto;gap:1.2rem;align-items:center;padding:1.25rem;border-radius:16px;background:rgba(255,255,255,.45);transition:background .25s,transform .25s}.contact-methods a:hover{background:#fff;transform:translateX(-5px)}.contact-methods span,.contact-methods small{font-size:.66rem;font-weight:750;text-transform:uppercase}.contact-methods div{display:grid}.contact-methods strong{font-weight:650}.contact-methods i{font-style:normal}.inquiry{background:#fff}.inquiry__card{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(3rem,8vw,8rem);padding:clamp(2rem,5vw,5rem);border-radius:var(--radius);background:var(--paper)}.inquiry__intro h2{margin:1rem 0;font-size:clamp(3rem,5vw,5.5rem);letter-spacing:-.075em;line-height:.9}.inquiry__intro>p:last-child{color:var(--muted)}
.product-hero{padding:clamp(9rem,13vw,12rem) 0 4rem}.product-hero__card{display:grid;grid-template-columns:1fr .85fr;gap:clamp(3rem,7vw,7rem);align-items:center;padding:clamp(2rem,5vw,5rem);border-radius:var(--radius);background:var(--blue);color:#fff}.product-hero__copy h1{margin:1rem 0 2rem;font-size:clamp(3.5rem,7vw,7rem);letter-spacing:-.08em;line-height:.86}.product-hero__copy>p:not(.eyebrow){max-width:38rem;color:rgba(255,255,255,.72)}.product-hero figure{height:36rem;overflow:hidden;border-radius:20px;background:#fff}.product-hero figure img{width:100%;height:calc(100% - 3.1rem);object-fit:cover}.product-hero figcaption{padding:.8rem 1rem;color:var(--ink);font-size:.7rem;font-weight:750;text-transform:uppercase}.product-information{background:#fff}.product-information__grid{display:grid;grid-template-columns:.45fr 1.55fr;gap:5rem}.product-information__aside{display:flex;flex-direction:column;gap:1rem}.product-information__aside strong{font-size:clamp(4rem,8vw,8rem);letter-spacing:-.08em}.product-information__aside a{font-size:.75rem;font-weight:750}.product-information__copy h2{margin:0 0 2rem;font-size:clamp(3rem,5vw,5rem);letter-spacing:-.07em;line-height:.9}.product-information__copy p{max-width:54rem;color:var(--muted);font-size:1.05rem}.product-navigation{display:flex;justify-content:space-between;padding-block:2rem 6rem;border-top:1px solid var(--line);font-size:.78rem;font-weight:750}
@media(max-width:900px){.inner-hero__grid,.folira-statement__grid,.quality-policy__card,.story-ending__card,.contact-hub__grid,.inquiry__card,.product-hero__card,.product-information__grid{grid-template-columns:1fr}.inner-hero__media{margin-top:1rem}.folira-statement__grid{gap:1.5rem}.company-gallery__grid{grid-template-columns:1fr}.company-gallery__facts{grid-template-columns:repeat(3,1fr)}.purpose-grid,.principles__grid{grid-template-columns:1fr}.timeline-card{grid-template-columns:.45fr 1.55fr}.catalogue-card{grid-template-columns:1fr}.catalogue-card:nth-child(even) .catalogue-card__media{order:0}.contact-showcase__grid{grid-template-columns:1fr 1fr}.quality-policy__seal{width:min(100%,22rem);margin:auto}.story-ending figure{min-height:28rem}}
@media(max-width:620px){.brand img{width:4.4rem;height:3rem}.inner-hero{padding-top:8rem}.inner-hero__copy h1{font-size:4rem}.inner-hero__media{grid-template-columns:1fr}.inner-hero__media figure{height:27rem}.floating-badge{position:absolute;right:-.2rem;bottom:-1rem;min-height:7rem}.company-gallery__main img{height:25rem}.company-gallery__facts{grid-template-columns:1fr}.purpose-card{min-height:34rem}.timeline-card{grid-template-columns:1fr;min-height:auto}.timeline-card__meta{min-height:7rem;flex-direction:row}.timeline-card__meta strong{font-size:3.8rem}.story-ending figure{min-height:22rem}.catalogue-card{padding:1rem}.catalogue-card__media{height:25rem}.contact-showcase__grid{grid-template-columns:1fr}.contact-showcase img,.contact-showcase figure:last-child img{height:24rem}.contact-methods a{grid-template-columns:1.5rem 1fr auto}.product-hero__card{padding:1rem}.product-hero figure{height:27rem}.product-navigation{flex-direction:column;gap:1rem}}

/* 1.2 — full-frame imagery, high-contrast identity and route transitions */
.page-transition{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;background:var(--route-next,var(--paper));transform:translateY(101%);transition:transform .56s var(--ease);pointer-events:none}.page-transition:before{position:absolute;inset:1rem;border:1px solid rgba(17,24,39,.22);border-radius:var(--radius);content:""}.page-transition span{font-size:clamp(2.7rem,8vw,8rem);font-weight:800;letter-spacing:-.075em;color:var(--ink)}body.is-leaving{overflow:hidden}body.is-leaving .page-transition{transform:none}
.route-home main{animation:routeHome .7s var(--ease) both}.route-about .inner-hero{animation:routeAbout .75s var(--ease) both}.route-history .inner-hero{animation:routeHistory .8s var(--ease) both}.route-products .inner-hero{animation:routeProducts .8s var(--ease) both}.route-contact .inner-hero{animation:routeContact .8s var(--ease) both}.route-product .product-hero__card{animation:routeProduct .75s var(--ease) both}@keyframes routeHome{from{opacity:0;filter:blur(10px)}to{opacity:1;filter:none}}@keyframes routeAbout{from{opacity:0;transform:translateX(-4rem)}to{opacity:1;transform:none}}@keyframes routeHistory{from{opacity:0;transform:translateY(4rem)}to{opacity:1;transform:none}}@keyframes routeProducts{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes routeContact{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}@keyframes routeProduct{from{opacity:0;transform:rotate(-1deg) scale(.98)}to{opacity:1;transform:none}}
.folira-hero.folira-hero--cinematic{position:relative;display:flex;min-height:max(48rem,100svh);align-items:stretch;padding:0;overflow:hidden;background:#30303a;color:#fff}.folira-hero__backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;background:#30303a}.folira-hero__veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,24,39,.05) 20%,rgba(17,24,39,.28) 55%,rgba(17,24,39,.88) 100%),linear-gradient(0deg,rgba(17,24,39,.7),transparent 36%)}.folira-hero__stage{position:relative;z-index:1;display:flex;width:min(1180px,calc(100% - 48px));align-items:center;margin:auto;padding:9rem 0 8rem}.folira-hero__copy--glass{width:min(49%,38rem);margin-left:auto;padding:clamp(1.6rem,3.5vw,3rem);border:1px solid rgba(255,255,255,.22);border-radius:var(--radius);background:rgba(17,24,39,.55);box-shadow:0 24px 70px rgba(0,0,0,.28);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.folira-hero__copy--glass h1{font-size:clamp(3.2rem,6vw,6.6rem)}.folira-hero__copy--glass .lead{color:rgba(255,255,255,.78)}.folira-hero__copy--glass .button--dark{background:var(--lime);color:var(--ink)}.folira-hero--cinematic .client-ribbon{position:absolute;right:0;bottom:0;left:0;z-index:2;width:min(1180px,calc(100% - 48px));margin:0 auto;padding:1.2rem 0;color:rgba(255,255,255,.78);border-color:rgba(255,255,255,.25)}
.brand img,.footer-brand .brand img{object-fit:contain}.service-card--pigments{background:var(--blue)}.service-card--pigments img{padding:1.5rem;object-fit:contain!important}
.material-card__media,.about-home__identity figure,.inner-hero__media figure,.company-gallery__main,.history-image,.catalogue-card__media,.contact-showcase figure>img,.product-hero figure,.story-ending figure{background:#fff}.material-card__media img,.about-home__identity figure img,.inner-hero__media figure img,.company-gallery__main img,.history-image img,.catalogue-card__media img,.contact-showcase img,.product-hero figure img,.story-ending img{object-fit:contain!important;object-position:center!important}.inner-hero__media--products figure,.inner-hero__media--contact figure{background:var(--blue-dark)}.inner-hero__media--products figure img,.inner-hero__media--contact figure img{padding:1.4rem}.contact-showcase figure:first-child img{background:var(--blue-dark);padding:1.2rem}.catalogue-card__media img,.product-hero figure img{padding:1.25rem}.company-gallery__main img,.about-home__identity figure img,.story-ending img{padding:1rem}
@media(max-width:900px){.folira-hero__copy--glass{width:min(64%,38rem)}.folira-hero__veil{background:linear-gradient(90deg,rgba(17,24,39,.06),rgba(17,24,39,.75))}}
@media(max-width:620px){.folira-hero.folira-hero--cinematic{display:block;min-height:auto;padding:0 0 5.5rem;background:#30303a}.folira-hero__backdrop{position:relative;width:100%;height:auto;object-fit:contain}.folira-hero__veil{background:linear-gradient(0deg,#30303a 0,rgba(48,48,58,.88) 12%,transparent 38%)}.folira-hero__stage{width:calc(100% - 24px);padding:0}.folira-hero__copy--glass{width:100%;margin:-1.5rem 0 0;padding:1.4rem;background:rgba(17,24,39,.72)}.folira-hero__copy--glass h1{font-size:3.2rem}.folira-hero__copy--glass .folira-hero__roles{height:4.2rem;font-size:1.45rem;line-height:1.05}.folira-hero__copy--glass .folira-hero__roles span{height:4.2rem}.folira-hero--cinematic .client-ribbon{position:relative;width:calc(100% - 24px);flex-wrap:wrap;justify-content:flex-start;gap:.7rem;margin:2rem auto 0;padding:1rem 0}.folira-hero--cinematic .client-ribbon i{display:none}.page-transition:before{inset:.6rem}.inner-hero__media--products figure img,.inner-hero__media--contact figure img{padding:.7rem}}
@media(prefers-reduced-motion:reduce){.page-transition{display:none}.route-home main,.route-about .inner-hero,.route-history .inner-hero,.route-products .inner-hero,.route-contact .inner-hero,.route-product .product-hero__card{animation:none}}

/* Pigment contrast: separate the lime powder from its frame. */
.material-card:nth-child(2) .material-card__media{background:var(--blue-dark)}
