/* Phase 1 component layer. Future phases should extend this file without replacing the design tokens. */
.f8-home-intro, .f8-phase-note, .f8-site-footer { position: relative; }
.f8-home-intro::before { content: 'F8'; position: absolute; right: 4vw; top: 10%; font: 500 clamp(8rem, 25vw, 28rem)/.8 var(--f8-body); color: rgba(243,241,236,.025); pointer-events: none; }

/* =========================================================
   FASE 3 — CASES / PROCESS / EDITORIAL / INTERNAL PAGES
   ========================================================= */
.f8-wine-text{color:var(--f8-wine)}
.f8-case-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(24px,3vw,48px);align-items:start}
.f8-case-card{grid-column:span 7}.f8-case-card:nth-child(even){grid-column:8 / -1;margin-top:clamp(70px,12vw,180px)}
.f8-case-card--small{grid-column:span 5}.f8-case-card--large{grid-column:span 7}
.f8-case-media,.f8-blog-card-media,.f8-case-single-media{display:block;overflow:hidden;background:#111;border:1px solid var(--f8-line-soft)}
.f8-case-media{aspect-ratio:1.35}.f8-case-media img,.f8-blog-card-media img,.f8-case-single-media img{width:100%;height:100%;object-fit:cover;transition:transform 900ms var(--f8-ease),filter 900ms var(--f8-ease)}
.f8-case-card:hover .f8-case-media img,.f8-blog-card:hover .f8-blog-card-media img{transform:scale(1.035);filter:saturate(1.08)}
.f8-case-placeholder{height:100%;min-height:260px;display:grid;place-items:center;background:radial-gradient(circle at 70% 30%,rgba(123,15,21,.3),transparent 35%),linear-gradient(135deg,#0a0a0a,#151515);color:var(--f8-muted);font:10px var(--f8-mono);letter-spacing:.1em}
.f8-case-info{padding-top:20px}.f8-case-meta,.f8-insight-meta{display:flex;justify-content:space-between;gap:20px}.f8-case-info h3,.f8-case-info h2{margin:14px 0 10px;font-size:clamp(2rem,3.4vw,4rem);line-height:.95;letter-spacing:-.05em;font-weight:500}.f8-case-info p{color:var(--f8-muted);max-width:560px;margin:0 0 18px}.f8-arrow-link{display:inline-flex;gap:10px;align-items:center;font:10px var(--f8-mono);letter-spacing:.08em}.f8-arrow-link:hover{color:var(--f8-wine)}
.f8-case-empty,.f8-insight-empty{padding:48px;border:1px solid var(--f8-line-soft);background:#0c0c0c}
.f8-section-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:48px;padding-top:28px;border-top:1px solid var(--f8-line-soft)}.f8-button--ghost{background:transparent}.f8-button--ghost:hover{background:var(--f8-wine);border-color:var(--f8-wine);color:#fff}.f8-case-empty p,.f8-insight-empty p{color:var(--f8-muted);max-width:540px}.f8-button{display:inline-flex;align-items:center;gap:14px;border:1px solid var(--f8-line);padding:14px 18px;font:10px var(--f8-mono);letter-spacing:.08em;transition:background var(--f8-fast) ease,color var(--f8-fast) ease,border-color var(--f8-fast) ease}.f8-button:hover{background:var(--f8-wine);border-color:var(--f8-wine);color:#fff}
.f8-process{background:#0b0b0b}.f8-process-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--f8-line-soft)}.f8-process-item{position:relative;display:grid;grid-template-columns:100px minmax(230px,.7fr) 1fr 18px;gap:28px;align-items:center;padding:32px 0;border-bottom:1px solid var(--f8-line-soft)}.f8-process-number{font:10px var(--f8-mono);color:var(--f8-wine)}.f8-process-item h3{margin:0;font-size:clamp(1.5rem,2.5vw,2.7rem);font-weight:500;letter-spacing:-.04em}.f8-process-item p{margin:0;color:var(--f8-muted);max-width:520px}.f8-process-line{width:7px;height:7px;border:1px solid var(--f8-wine);border-radius:50%;justify-self:end;transition:transform .4s var(--f8-ease),background .4s ease}.f8-process-item:hover .f8-process-line{background:var(--f8-wine);transform:scale(1.8)}
.f8-insight-list{border-top:1px solid var(--f8-line-soft)}.f8-insight-row{display:grid;grid-template-columns:70px 1fr 35px;gap:28px;align-items:center;padding:28px 0;border-bottom:1px solid var(--f8-line-soft);transition:padding .45s var(--f8-ease),background .45s var(--f8-ease)}.f8-insight-row:hover{padding-inline:18px;background:rgba(123,15,21,.045)}.f8-insight-number{font:10px var(--f8-mono);color:var(--f8-wine)}.f8-insight-main h3{margin:10px 0 0;font-size:clamp(1.5rem,3vw,3.2rem);line-height:1;letter-spacing:-.045em;font-weight:500}.f8-insight-main h3 a:hover{color:var(--f8-wine)}.f8-section-link{padding-top:28px}.f8-section-link a{font:10px var(--f8-mono);letter-spacing:.08em}.f8-section-link a:hover{color:var(--f8-wine)}
.f8-blog-archive,.f8-case-archive{padding:160px 0 120px}.f8-archive-header{max-width:1100px;margin-bottom:90px}.f8-archive-header .f8-lead{margin-top:30px}.f8-blog-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:70px 34px}.f8-blog-card-media{aspect-ratio:1.45}.f8-blog-card-body{padding-top:18px}.f8-blog-card-body h2{margin:12px 0;font-size:clamp(2rem,3.6vw,4rem);line-height:.95;letter-spacing:-.05em;font-weight:500}.f8-blog-card-body h2 a:hover{color:var(--f8-wine)}.f8-blog-card-body p{margin:0 0 18px;color:var(--f8-muted);max-width:560px}.f8-pagination{padding-top:70px}.f8-pagination .nav-links{display:flex;gap:20px;font:10px var(--f8-mono)}
.f8-post-header{padding:155px 0 70px;max-width:1120px}.f8-post-header h1{margin-top:28px}.f8-post-meta{display:flex;flex-wrap:wrap;gap:20px;margin-top:30px;font:10px var(--f8-mono);text-transform:uppercase;color:var(--f8-muted);letter-spacing:.08em}.f8-featured-media{margin:0 0 90px;aspect-ratio:1.9;overflow:hidden;background:#111}.f8-featured-media img{width:100%;height:100%;object-fit:cover}.f8-post-layout{display:grid;grid-template-columns:180px minmax(0,760px);gap:80px;justify-content:center}.f8-post-side{padding-top:10px}.f8-prose{font-size:1.05rem;color:#d4d1cb}.f8-prose>*{max-width:100%}.f8-prose h2{font-size:clamp(2rem,4vw,3.6rem);line-height:1;letter-spacing:-.045em;font-weight:500;margin:2.3em 0 .6em;color:var(--f8-paper)}.f8-prose h3{font-size:1.5rem;margin:2em 0 .6em;color:var(--f8-paper)}.f8-prose p{margin:0 0 1.4em}.f8-prose a{text-decoration:underline;text-decoration-color:var(--f8-wine);text-underline-offset:4px}.f8-prose blockquote{margin:2em 0;padding:18px 24px;border-left:2px solid var(--f8-wine);font-size:1.35rem;color:var(--f8-paper)}.f8-prose img{margin:2.5rem auto}.f8-post-footer{max-width:760px;margin:70px auto 0}.f8-post-tags{display:flex;flex-wrap:wrap;gap:10px}.f8-post-tags a{font:10px var(--f8-mono);color:var(--f8-muted)}.f8-post-tags a:hover{color:var(--f8-wine)}.f8-related{margin-top:120px;padding-top:60px;border-top:1px solid var(--f8-line-soft)}.f8-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:45px}.f8-related-grid article{border-top:1px solid var(--f8-line-soft);padding-top:18px}.f8-related-grid h2{font-size:clamp(1.5rem,2.5vw,2.4rem);line-height:1;letter-spacing:-.04em;font-weight:500}.f8-related-grid h2 a:hover{color:var(--f8-wine)}
.f8-case-single-header{padding:155px 0 70px}.f8-case-single-header h1{margin:28px 0}.f8-case-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:55px;padding-top:20px;border-top:1px solid var(--f8-line-soft)}.f8-case-facts span{display:grid;gap:7px;font-size:.9rem;color:var(--f8-gray)}.f8-case-facts b{font:9px var(--f8-mono);color:var(--f8-muted);letter-spacing:.08em}.f8-case-single-media{margin:0;aspect-ratio:1.9}.f8-case-single-content{max-width:780px;margin:80px auto}.f8-content-container{padding-top:150px;padding-bottom:120px}.f8-content-header{max-width:1100px;margin-bottom:70px}.f8-content-header h1{margin-top:25px}
@media(max-width:900px){.f8-case-grid{display:grid;grid-template-columns:1fr}.f8-case-card,.f8-case-card--small,.f8-case-card--large,.f8-case-card:nth-child(even){grid-column:auto;margin-top:0}.f8-process-item{grid-template-columns:55px 1fr 14px}.f8-process-item p{grid-column:2}.f8-blog-grid{grid-template-columns:1fr}.f8-post-layout{grid-template-columns:1fr;gap:25px}.f8-post-side{display:none}.f8-related-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.f8-section-actions{display:grid;grid-template-columns:1fr}.f8-section-actions .f8-button{justify-content:space-between}.f8-case-grid{gap:55px}.f8-process-item{grid-template-columns:45px 1fr 10px;gap:12px}.f8-process-item h3{font-size:1.55rem}.f8-process-item p{font-size:.9rem}.f8-insight-row{grid-template-columns:38px 1fr 20px;gap:10px}.f8-insight-meta{display:grid;gap:4px}.f8-blog-archive,.f8-case-archive{padding-top:120px}.f8-archive-header{margin-bottom:55px}.f8-post-header{padding-top:125px}.f8-featured-media{aspect-ratio:1.35;margin-bottom:55px}.f8-case-facts{grid-template-columns:1fr;gap:15px;margin-top:40px}.f8-related-grid{grid-template-columns:1fr}.f8-case-single-header{padding-top:125px}}

/* Fator8 internal pages */
.f8-page-shell{padding-top:0}.f8-dark-section{background:var(--f8-black);color:var(--f8-paper)}
.f8-paper-section{background:var(--f8-paper);color:var(--f8-black);padding:var(--f8-space-8) 0}.f8-inner-hero{padding:190px 0 110px;min-height:72vh;display:flex;align-items:end}.f8-inner-hero-grid{display:grid;grid-template-columns:.32fr 1fr;gap:7vw;width:100%}.f8-inner-hero h1{max-width:1000px}.f8-inner-hero h1 em,.f8-closing-page h2 em{font-style:normal;color:var(--f8-wine)}.f8-split-copy{display:grid;grid-template-columns:.32fr 1fr;gap:7vw}.f8-prose-inline{max-width:760px;color:#5e5b58;font-size:1.05rem;line-height:1.8}.f8-values{padding:120px 0}.f8-value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--f8-line);margin-top:60px}.f8-value-grid article{background:var(--f8-black);padding:34px}.f8-value-grid article>span{font:10px var(--f8-mono);color:var(--f8-wine)}.f8-value-grid h2{font-size:clamp(1.7rem,3vw,2.6rem);font-weight:500;letter-spacing:-.05em}.f8-value-grid p{color:var(--f8-gray);max-width:300px}.f8-closing-page{padding:120px 0}.f8-closing-page .f8-lead{margin:25px 0 30px}.f8-button--dark{background:var(--f8-black);border-color:var(--f8-black);color:var(--f8-paper)}.f8-button--dark:hover{background:var(--f8-wine);border-color:var(--f8-wine);color:var(--f8-white)}.f8-detail-list{list-style:none;margin:0;padding:0;border-top:1px solid rgba(8,8,8,.14)}.f8-detail-list li{display:grid;grid-template-columns:40px 1fr;gap:18px;padding:22px 0;border-bottom:1px solid rgba(8,8,8,.14);font-size:1.1rem}.f8-detail-list li span{color:var(--f8-wine)}.f8-service-directory{padding:80px 0 120px}.f8-directory-list{border-top:1px solid var(--f8-line)}.f8-directory-list a{display:grid;grid-template-columns:60px 1fr 1.2fr 30px;align-items:center;gap:20px;padding:28px 0;border-bottom:1px solid var(--f8-line);transition:color .2s ease,padding .2s ease}.f8-directory-list a:hover{color:var(--f8-wine);padding-inline:10px}.f8-directory-list span,.f8-directory-list small{font:10px var(--f8-mono);color:var(--f8-muted)}.f8-directory-list strong{font-size:clamp(1.25rem,2.4vw,2.1rem);font-weight:500;letter-spacing:-.04em}.f8-directory-list b{font-weight:400}.f8-segment-directory{padding:80px 0 120px}.f8-segment-page-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--f8-line)}.f8-segment-page-grid a{position:relative;min-height:260px;padding:32px;background:var(--f8-black);transition:background .3s ease}.f8-segment-page-grid a:hover{background:#101010}.f8-segment-page-grid span{font:10px var(--f8-mono);color:var(--f8-wine)}.f8-segment-page-grid h2{font-size:clamp(1.8rem,3vw,3rem);font-weight:500;letter-spacing:-.05em;margin:45px 0 10px}.f8-segment-page-grid p{color:var(--f8-gray);max-width:440px}.f8-segment-page-grid b{position:absolute;right:30px;bottom:30px;color:var(--f8-wine)}.f8-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.f8-contact-links{border-top:1px solid rgba(8,8,8,.15)}.f8-contact-links a{display:grid;grid-template-columns:1fr 2fr 30px;gap:20px;align-items:center;padding:28px 0;border-bottom:1px solid rgba(8,8,8,.15)}.f8-contact-links span{font:10px var(--f8-mono);color:#6f6d6a}.f8-contact-links strong{font-size:clamp(1.15rem,2vw,1.7rem);font-weight:500}.f8-contact-links b{font-weight:400;color:var(--f8-wine)}
@media(max-width:768px){.f8-inner-hero{padding:140px 0 80px;min-height:auto}.f8-inner-hero-grid,.f8-split-copy,.f8-contact-grid{grid-template-columns:1fr;gap:45px}.f8-value-grid,.f8-segment-page-grid{grid-template-columns:1fr}.f8-directory-list a{grid-template-columns:38px 1fr 25px}.f8-directory-list small{display:none}.f8-contact-links a{grid-template-columns:1fr 30px}.f8-contact-links strong{grid-column:1}.f8-contact-links b{grid-column:2;grid-row:1/3}}
