.hero{position:relative;isolation:isolate;min-height:650px;display:flex;align-items:center;background:#202422;color:#fff;overflow:hidden}.hero-background-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(270deg,rgba(0,0,0,.82),rgba(0,0,0,.45) 52%,rgba(0,0,0,.12));z-index:-1}.hero-copy{padding-block:90px}.hero .eyebrow{color:var(--accent)}.hero h1{font-size:clamp(36px,4.5vw,65px);line-height:1.65;max-width:760px}.hero h1 span{color:var(--accent)}.hero-description{max-width:530px;color:#e0e0e0;font-size:14px;line-height:2.2;margin-top:22px}.hero-actions{display:flex;gap:30px;align-items:center;margin-top:36px}.hero-secondary{font-size:13px;border-bottom:1px solid #ffffff70;padding-block:8px}.hero .btn:hover{background:white;color:#111}.category-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:22px}.category-card{text-align:center;padding:15px 10px 24px;transition:background .2s}.category-card:hover{background:var(--bg-2)}.category-tag{font-size:9px;color:#888}.category-visual{height:155px;display:grid;place-items:center;margin-block:14px}.category-visual img{width:100%;height:100%;object-fit:contain}.category-symbol{display:grid;place-items:center;background:var(--bg-2);width:130px;height:130px;border-radius:50%}.category-symbol svg{width:52px;height:52px}.category-bottom h3{font-size:15px}.category-bottom p{font-size:11px;color:var(--muted);margin-top:8px}.round-arrow{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--accent);margin:16px auto 0}.round-arrow svg{width:18px}.about-section{background:var(--bg-2)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.about-copy{order:2}.about-copy p{color:var(--muted);margin:24px 0;line-height:2.3}.about-visual{position:relative}.about-visual>img{width:100%;aspect-ratio:1.2;object-fit:cover}.benefits-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;border-top:1px solid #ddd;margin-top:65px;padding-top:35px}.benefit{display:flex;gap:20px}.benefit-icon{color:#8c6b00}.benefit h3{font-size:16px}.benefit p{font-size:12px;color:var(--muted);margin-top:8px}.projects-section .cards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.projects-section .card-image{aspect-ratio:1.8}.clients-section{border-block:1px solid var(--line)}.client-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:24px}.client-logo{min-height:100px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);padding:20px}.client-logo img{width:100%;height:65px;object-fit:contain;filter:grayscale(1);opacity:.75;transition:filter .2s,opacity .2s}.client-logo:hover img{filter:none;opacity:1}.contact-section{background:var(--accent);padding-block:65px}.contact-inner{display:flex;justify-content:space-between;gap:40px;align-items:center}.contact-copy{max-width:720px}.contact-copy p{margin-top:16px}.contact-section .eyebrow{color:#49400c}.contact-section .btn{background:var(--navy);color:var(--on-navy)}.contact-section .btn:hover{background:#203d5d;color:#fff}.contact-actions{display:flex;flex-wrap:wrap;gap:18px}.product-intro{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.product-intro p{color:var(--muted);margin-block:20px}.product-intro-image img{max-height:300px;object-fit:contain}.project-empty{padding:40px;background:var(--bg-2)}.outline-word{display:block;font-size:clamp(30px,7vw,80px);color:#ccc;direction:ltr}.js-reveal [data-reveal]{opacity:0;transform:translateY(38px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1);transition-delay:var(--delay,0ms)}.js-reveal [data-reveal].in{opacity:1;transform:none}
.js-reveal [data-reveal-group]{opacity:1;transform:none}
.js-reveal [data-reveal-group] :is(.eyebrow,h2,p,.text-link,.section-description){opacity:0;transform:translateY(34px);transition:opacity .85s cubic-bezier(.2,.7,.2,1),transform .85s cubic-bezier(.2,.7,.2,1);transition-delay:var(--delay,0ms)}
.js-reveal [data-reveal-group] h2{clip-path:inset(0 0 -20% 0)}
.js-reveal [data-reveal-group].in :is(.eyebrow,h2,p,.text-link,.section-description){opacity:1;transform:none}
@media(max-width:1000px){.hero{min-height:580px}.category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.about-grid{gap:40px}.client-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.benefits-grid{gap:20px}.contact-inner{align-items:start;flex-direction:column}}
@media(max-width:600px){.hero{min-height:570px}.hero-copy{padding-block:65px}.hero h1{font-size:35px}.hero-background-image{object-position:40% center}.hero::after{background:#0009}.hero-description{font-size:12px}.hero-actions{gap:20px}.hero-actions .btn{padding-inline:20px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.category-visual{height:120px}.category-tag{font-size:8px}.category-bottom h3{font-size:13px}.about-grid{grid-template-columns:1fr}.about-copy{order:0}.benefits-grid{grid-template-columns:1fr;margin-top:50px}.client-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.projects-section .cards-grid,.product-intro{grid-template-columns:1fr}.contact-section{padding-block:45px}}
@media(prefers-reduced-motion:reduce){.js-reveal [data-reveal]{opacity:1;transform:none}}
.hero h1{font-size:clamp(35px,4.1vw,58px);max-width:850px}@media(max-width:600px){.hero h1{font-size:35px}}

/* Project cards overlap the top edge of a full-width, replaceable photo. */
.projects-showcase{position:relative;isolation:isolate;min-height:860px;padding-top:78px;padding-bottom:410px;overflow:hidden}
.projects-backdrop{position:absolute;inset:300px 0 0;z-index:-1;background:#e5eff3}
.projects-backdrop::after{content:"";position:absolute;inset:0;background:linear-gradient(#ffffff60,transparent 60%)}
.home .cinematic-main,.home .cinematic-main .curtain-rest,.home .cinematic-main section{background-color:#fbf9ee}
@media(max-width:760px){.projects-backdrop .projects-background{opacity:.22}.projects-backdrop{background:#f4f7f9}}
.projects-background{width:100%;height:100%;object-fit:cover;object-position:center}
.projects-content{text-align:center}
.projects-heading{max-width:650px;margin:0 auto 52px}
.projects-heading .eyebrow{margin-bottom:10px}
.projects-heading h2{font-size:clamp(26px,3vw,38px)}
.projects-heading p{max-width:530px;margin:17px auto 0;color:var(--muted);font-size:13px;line-height:2.1}
.project-showcase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;max-width:940px;margin:auto}
.project-showcase-card{position:relative;min-width:0;border:1px solid #aaa;border-radius:4px;background:#fff;box-shadow:0 6px 20px #00000005}
.project-showcase-card{display:flex;flex-direction:column}.project-showcase-card>a{display:block;overflow:hidden}
.project-badge{position:absolute;top:-23px;left:calc(50% - 23px);width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#f5f5f5;border:6px solid #fff;z-index:1;color:#616161}
.project-badge svg{width:22px;height:22px}
.project-card-heading{padding:38px 20px 22px;min-height:153px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px}
.project-card-heading h3{font-size:16px;line-height:1.85}
.project-card-heading>span{font-size:10px;color:#666}
.project-card-photo{height:190px;margin-top:auto;overflow:hidden}
.project-card-photo img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.project-showcase-card:hover .project-card-photo img{transform:scale(1.04)}
.project-showcase-card:hover{border-color:#555}
.projects-all{margin-top:35px}
@media(max-width:1000px){.projects-showcase{min-height:760px;padding-bottom:290px}.project-showcase-grid{gap:20px}.project-card-heading{padding-inline:12px;min-height:170px}.project-card-heading h3{font-size:14px}.project-card-photo{height:150px}}
@media(max-width:600px){.projects-showcase{padding-top:48px;padding-bottom:230px}.projects-heading{margin-bottom:45px}.projects-heading p{font-size:12px}.project-showcase-grid{grid-template-columns:1fr;max-width:360px;gap:42px}.project-card-heading{min-height:125px;padding-top:32px}.project-card-heading h3{font-size:16px}.project-card-photo{height:190px}.projects-backdrop{top:270px}.projects-background{object-position:60% center}.projects-all{margin-top:30px}}

