@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');


:root { font-family: 'DM Sans', sans-serif; color: #f5f4f1; background: #191919; font-synthesis: none; text-rendering: optimizeLegibility; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; background: #191919; }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
button { cursor: pointer; }
.site-shell { overflow: hidden; }
.site-header { align-items: center; background: rgba(25,25,25,.94); border-bottom: 1px solid #333; display: flex; height: 80px; justify-content: space-between; padding: 0 clamp(24px, 6vw, 96px); position: relative; z-index: 10; }
.brand { align-items: center; display: inline-flex; gap: 11px; }
.brand-mark { align-items: center; background: #d45200; border-radius: 3px; color: #191919; display: inline-flex; height: 32px; justify-content: center; transform: skew(-8deg); width: 32px; }
.brand-name { font-family: 'Space Grotesk', sans-serif; font-size: 15px; font-weight: 600; letter-spacing: .09em; }.brand-name b { color: #f56a19; font-weight: 600; }
.main-nav { align-items: center; display: flex; gap: 36px; font-size: 13px; font-weight: 500; }.main-nav a { color: #b6b5b2; transition: color .2s ease; }.main-nav a:hover { color: #f56a19; }.main-nav .nav-cta { align-items: center; border: 1px solid #575757; color: #f5f4f1; display: flex; gap: 9px; padding: 12px 17px; }.main-nav .nav-cta:hover { background: #f56a19; border-color: #f56a19; color: #191919; }.menu-toggle { background: none; border: 0; color: #fff; display: none; }
.section-grid { display: grid; grid-template-columns: repeat(12, 1fr); gap: 32px; padding-left: clamp(24px, 7vw, 112px); padding-right: clamp(24px, 7vw, 112px); }.hero { align-items: center; min-height: 650px; padding-bottom: 92px; padding-top: 86px; }.hero-copy { grid-column: 1 / span 6; }.eyebrow { align-items: center; color: #c2c0ba; display: flex; font-size: 11px; font-weight: 700; gap: 10px; letter-spacing: .17em; margin: 0 0 22px; text-transform: uppercase; }.eyebrow span { background: #f56a19; display: inline-block; height: 2px; width: 27px; }.eyebrow.orange { color: #f56a19; }.hero h1, h2 { font-family: 'Space Grotesk', sans-serif; font-weight: 500; letter-spacing: -.05em; line-height: 1.02; margin: 0; }.hero h1 { font-size: clamp(43px, 5.3vw, 78px); max-width: 650px; }.hero h1 em, h2 em { color: #f56a19; font-style: normal; }.hero-text { color: #bcbab5; font-size: 18px; line-height: 1.6; margin: 28px 0 34px; max-width: 445px; }.hero-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 25px; }.button { align-items: center; border: 0; display: inline-flex; font-size: 13px; font-weight: 700; gap: 12px; justify-content: center; padding: 16px 22px; transition: transform .2s ease, background .2s ease; }.button:hover { transform: translateY(-3px); }.button-primary { background: #d45200; color: #fff; }.button-primary:hover { background: #f56a19; }.text-link { align-items: center; border: 0; background: none; color: #ecebe7; display: inline-flex; font-size: 13px; gap: 9px; padding: 0; transition: color .2s ease; }.text-link:hover { color: #f56a19; }.hero-proof { align-items: center; color: #888; display: flex; font-size: 10px; gap: 12px; letter-spacing: .04em; margin-top: 67px; text-transform: uppercase; }.proof-line { background: #454545; height: 1px; width: 35px; }.proof-dot { background: #d45200; border-radius: 50%; height: 4px; width: 4px; }
.hero-visual { grid-column: 8 / span 5; position: relative; }.visual-frame { aspect-ratio: 1 / 1.15; background: #333; border: 1px solid #424242; overflow: hidden; position: relative; }.visual-frame:after { background: linear-gradient(135deg, transparent 42%, rgba(245,106,25,.35)); content: ''; inset: 0; pointer-events: none; position: absolute; }.visual-frame img { height: 100%; object-fit: cover; object-position: top; width: 100%; }.visual-tag { align-items: flex-start; background: #d45200; bottom: -22px; color: #fff; display: flex; font-size: 10px; gap: 14px; left: -27px; letter-spacing: .06em; padding: 17px 20px; position: absolute; text-transform: uppercase; }.visual-tag > span:first-child { font-family: 'Space Grotesk'; font-size: 23px; font-weight: 600; line-height: .8; }.visual-tag strong { font-size: 10px; font-weight: 500; line-height: 2; }
.statement { background: #f1efe9; color: #191919; display: grid; gap: 30px; grid-template-columns: 3fr 7fr; padding: 110px clamp(24px, 13vw, 208px); }.statement-number { color: #d45200; font-family: 'Space Grotesk'; font-size: 12px; font-weight: 600; letter-spacing: .13em; }.statement-number span { color: #aaa; margin: 0 9px; }.statement-content { max-width: 800px; }.statement h2, .services-section h2, .method-section h2, .values-section h2, .contact-section h2 { font-size: clamp(35px, 4.3vw, 61px); }.statement-content > p:last-child { color: #64615c; font-size: 17px; line-height: 1.7; margin: 28px 0 0; max-width: 720px; }
.services-section { background: #191919; padding-bottom: 125px; padding-top: 125px; }.section-intro { align-self: start; grid-column: 1 / span 4; position: sticky; top: 30px; }.section-intro > p:not(.eyebrow) { color: #96948f; font-size: 15px; line-height: 1.65; margin: 29px 0; max-width: 280px; }.services-list { grid-column: 6 / span 7; }.service-card { border-bottom: 1px solid #3a3a3a; padding: 0 0 38px; margin-bottom: 35px; }.service-card:last-child { margin-bottom: 0; }.service-top { align-items: center; color: #f56a19; display: flex; justify-content: space-between; margin-bottom: 25px; }.service-number { color: #85817c; font-size: 11px; letter-spacing: .16em; }.service-card h3 { font-family: 'Space Grotesk'; font-size: clamp(21px, 2.2vw, 30px); font-weight: 500; letter-spacing: -.035em; margin: 0 0 13px; }.service-card > p { color: #9f9d98; font-size: 15px; line-height: 1.65; margin: 0; max-width: 570px; }.service-points { display: flex; flex-wrap: wrap; gap: 10px 24px; margin-top: 22px; }.service-points span { align-items: center; color: #d7d5d0; display: flex; font-size: 11px; gap: 7px; }.service-points svg { color: #f56a19; }
.method-section { background: #242424; padding: 112px clamp(24px, 7vw, 112px); }.method-heading { margin-left: 25%; }.method-steps { display: grid; gap: 0; grid-template-columns: repeat(3, 1fr); margin: 80px 0 0 25%; }.method-step { border-left: 1px solid #555; padding: 0 33px 0 25px; }.method-step:first-child { border-color: #f56a19; }.method-step span { color: #f56a19; font-family: 'Space Grotesk'; font-size: 14px; }.method-step h3 { font-family: 'Space Grotesk'; font-size: 22px; font-weight: 500; margin: 28px 0 13px; }.method-step p { color: #999; font-size: 14px; line-height: 1.6; margin: 0; }
.values-section { padding-bottom: 120px; padding-top: 120px; }.values-section > div:first-child { grid-column: 1 / span 5; }.values-grid { display: grid; gap: 45px 35px; grid-column: 7 / span 6; grid-template-columns: repeat(2, 1fr); }.value { border-top: 1px solid #444; padding-top: 17px; }.value svg { color: #f56a19; }.value h3 { font-family: 'Space Grotesk'; font-size: 18px; font-weight: 500; margin: 17px 0 7px; }.value p { color: #999; font-size: 13px; line-height: 1.55; margin: 0; }
.contact-section { background: #f1efe9; color: #191919; display: grid; gap: 10%; grid-template-columns: 1fr 1fr; padding: 110px clamp(24px, 13vw, 208px); }.contact-copy > p:not(.eyebrow) { color: #77736d; font-size: 16px; line-height: 1.6; margin: 28px 0; max-width: 380px; }.contact-detail { border-top: 1px solid #c6c3bb; display: flex; flex-direction: column; font-family: 'Space Grotesk'; font-size: 12px; gap: 7px; letter-spacing: .08em; margin-top: 54px; padding-top: 17px; text-transform: uppercase; }.contact-detail span:last-child { color: #d45200; }.contact-form { align-self: center; display: flex; flex-direction: column; gap: 23px; }.contact-form label { color: #77736d; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }.contact-form input, .contact-form textarea { background: transparent; border: 0; border-bottom: 1px solid #bbb8b0; border-radius: 0; color: #191919; display: block; font-size: 16px; letter-spacing: normal; margin-top: 8px; outline: none; padding: 10px 0; resize: vertical; text-transform: none; width: 100%; }.contact-form input:focus, .contact-form textarea:focus { border-color: #d45200; }.contact-form .button { align-self: flex-start; margin-top: 5px; }.success-message { border-left: 3px solid #d45200; padding: 18px 0 18px 25px; }.success-icon { align-items: center; background: #d45200; border-radius: 50%; color: #fff; display: flex; height: 43px; justify-content: center; width: 43px; }.success-message h3 { font-family: 'Space Grotesk'; font-size: 26px; font-weight: 500; margin: 24px 0 8px; }.success-message p { color: #77736d; font-size: 14px; line-height: 1.6; margin: 0 0 22px; }
.site-footer { align-items: center; border-top: 1px solid #333; color: #777; display: flex; font-size: 9px; justify-content: space-between; letter-spacing: .12em; padding: 28px clamp(24px, 7vw, 112px); text-transform: uppercase; }.site-footer .brand-name { color: #eee; font-size: 11px; }.site-footer .brand-mark { height: 25px; width: 25px; }
.reveal-up { animation: rise .8s ease both; }.reveal-in { animation: enter .9s .15s ease both; } @keyframes rise { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } } @keyframes enter { from { opacity: 0; transform: translateX(20px); } to { opacity: 1; transform: translateX(0); } }
@media (max-width: 800px) { .site-header { height: 70px; }.menu-toggle { display: flex; }.main-nav { align-items: stretch; background: #191919; border-bottom: 1px solid #333; display: none; flex-direction: column; gap: 0; left: 0; padding: 14px 24px 24px; position: absolute; right: 0; top: 70px; }.main-nav.is-open { display: flex; }.main-nav a { padding: 15px 0; }.main-nav .nav-cta { justify-content: center; margin-top: 8px; }.section-grid { display: block; }.hero { padding-bottom: 95px; padding-top: 64px; }.hero-visual { margin: 62px 12px 0; }.hero-proof { margin-top: 42px; }.statement { display: block; padding: 78px 24px; }.statement-number { margin-bottom: 30px; }.section-intro { position: static; }.services-section { padding-bottom: 85px; padding-top: 85px; }.services-list { margin-top: 62px; }.method-section { padding: 85px 24px; }.method-heading { margin-left: 0; }.method-steps { display: block; margin: 57px 0 0; }.method-step { margin-bottom: 36px; min-height: 110px; }.values-section { padding-bottom: 85px; padding-top: 85px; }.values-grid { margin-top: 60px; }.contact-section { display: block; padding: 85px 24px; }.contact-form { margin-top: 62px; }.site-footer { align-items: flex-start; flex-direction: column; gap: 17px; } }
@media (max-width: 480px) { .hero h1 { font-size: 42px; }.hero-actions { align-items: flex-start; flex-direction: column; }.visual-tag { left: -8px; }.values-grid { gap: 32px 15px; }.value h3 { font-size: 16px; }.site-footer > span:last-child { display: none; } }

/* WordPress + Blog */
.admin-bar .site-header{margin-top:32px}.blog-main{min-height:70vh}.blog-hero{padding:95px clamp(24px,7vw,112px) 60px;border-bottom:1px solid #333}.blog-hero h1,.entry-title{font-family:'Space Grotesk',sans-serif;font-weight:500;letter-spacing:-.045em}.blog-hero h1{font-size:clamp(42px,5vw,72px);margin:0}.blog-hero p{color:#9f9d98;max-width:620px;font-size:17px;line-height:1.65}.posts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;padding:65px clamp(24px,7vw,112px) 100px}.post-card{border:1px solid #3a3a3a;background:#202020;transition:transform .2s ease,border-color .2s ease}.post-card:hover{transform:translateY(-4px);border-color:#5b5b5b}.post-card-image{aspect-ratio:16/10;display:block;overflow:hidden;background:#2b2b2b}.post-card-image img{width:100%;height:100%;object-fit:cover}.post-card-body{padding:24px}.post-meta{color:#f56a19;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.post-card h2{font-size:24px;margin:12px 0}.post-card h2 a:hover{color:#f56a19}.post-card p{color:#9f9d98;line-height:1.65;font-size:14px}.pagination{padding:0 clamp(24px,7vw,112px) 90px}.nav-links{display:flex;gap:10px;flex-wrap:wrap}.page-numbers{border:1px solid #444;padding:9px 13px}.page-numbers.current,.page-numbers:hover{background:#d45200;border-color:#d45200;color:#fff}.single-wrap{max-width:900px;margin:0 auto;padding:90px 24px 110px}.single-wrap .entry-title{font-size:clamp(38px,5vw,68px);line-height:1.05;margin:12px 0 20px}.single-featured{margin:45px 0}.single-featured img{width:100%;height:auto;display:block}.entry-content{color:#d0cec9;font-size:17px;line-height:1.85}.entry-content h2,.entry-content h3{color:#f5f4f1;margin-top:2em}.entry-content a{color:#f56a19;text-decoration:underline}.entry-content img{max-width:100%;height:auto}.back-blog{margin-top:45px}.empty-state{grid-column:1/-1;color:#999}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.form-notice{border-left:3px solid #d45200;padding:15px 18px;margin-bottom:20px;color:#555}.form-notice.error{border-color:#a32a2a}.hp-field{position:absolute!important;left:-9999px!important}.site-footer .brand{color:inherit}
@media(max-width:900px){.posts-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:782px){.admin-bar .site-header{margin-top:46px}}
@media(max-width:600px){.posts-grid{grid-template-columns:1fr;padding-top:40px}.blog-hero{padding-top:65px}}
