:root{--ink:#111;--muted:#6d6d6d;--line:#dcdcdc;--paper:#f7f7f5;--white:#fff;--accent:#c9ff45;--serif:Georgia,'Times New Roman',serif;--sans:Arial,'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);line-height:1.8;letter-spacing:.04em}a{color:inherit;text-decoration:none}.container{width:min(calc(100% - 96px),var(--max));margin:auto}.site-header{height:84px;position:fixed;inset:0 0 auto;z-index:10;background:rgba(247,247,245,.88);backdrop-filter:blur(12px);border-bottom:1px solid rgba(17,17,17,.08)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{font-size:1.12rem;font-weight:700;letter-spacing:.14em}.brand-dot{color:#91b900}.site-nav{display:flex;gap:38px;align-items:center;font-size:.67rem;letter-spacing:.16em;font-weight:700}.site-nav a,.footer-nav a{transition:opacity .25s}.site-nav a:hover,.footer-nav a:hover{opacity:.48}.nav-cta{border-bottom:1px solid;padding-bottom:3px}.menu-toggle{display:none}.hero{min-height:100svh;position:relative;overflow:hidden;background:#ecece8;padding-top:84px;display:flex;align-items:center}.hero-content{position:relative;z-index:1;padding:90px 0 100px}.eyebrow,.section-label p{font-size:.67rem;letter-spacing:.2em;font-weight:700}.eyebrow span{margin:0 12px;color:#7f7f7a}.hero h1{font-size:clamp(3.8rem,8.4vw,8.4rem);line-height:1.05;letter-spacing:-.08em;margin:24px 0 30px;font-weight:700}.hero h1 em,.contact h2 em{font-family:var(--serif);font-weight:400;letter-spacing:-.07em}.hero-lead{font-size:1rem;line-height:2.1;margin:0 0 42px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;border:1px solid;padding:12px 16px 12px 20px;font-size:.7rem;letter-spacing:.15em;font-weight:700;min-width:164px;transition:background .25s,color .25s,transform .25s}.button:hover{transform:translateY(-3px)}.button-light{color:var(--white);background:var(--ink);border-color:var(--ink)}.button-light:hover{color:var(--ink);background:transparent}.button span{font-size:1.1rem;line-height:1}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(17,17,17,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(17,17,17,.07) 1px,transparent 1px);background-size:120px 120px;mask-image:linear-gradient(90deg,transparent 0%,#000 35%,#000 100%)}.hero-orb{position:absolute;border:1px solid rgba(17,17,17,.18);border-radius:50%;right:7%;top:19%;width:39vw;height:39vw;max-width:570px;max-height:570px}.orb-two{width:28vw;height:28vw;right:14%;top:27%;background:linear-gradient(135deg,transparent 45%,rgba(201,255,69,.45));border:0;filter:blur(1px)}.scroll-note{position:absolute;bottom:35px;right:48px;font-size:.6rem;letter-spacing:.18em;display:flex;gap:12px;align-items:center}.scroll-note span{width:50px;height:1px;background:var(--ink)}.section{padding:150px 0}.about{background:var(--white)}.section-grid{display:grid;grid-template-columns:28% 1fr;gap:6%}.section-label{display:flex;gap:25px;align-items:flex-start}.section-label span{font-family:var(--serif);font-size:1.1rem}.section-label p{margin:3px 0 0}.section-kicker{font-size:.8rem;letter-spacing:.16em;color:var(--muted);margin:0 0 30px}.section-body h2,.section-heading h2{font-size:clamp(2.2rem,4vw,4.2rem);line-height:1.28;letter-spacing:-.08em;margin:0 0 54px}.body-copy{max-width:650px;color:#4d4d4b;font-size:.9rem;line-height:2.15}.business{background:var(--paper)}.section-heading{display:grid;grid-template-columns:28% 1fr;margin-bottom:72px}.section-heading h2{margin:0}.business-list{border-top:1px solid var(--line)}.business-card{display:grid;grid-template-columns:9% 1fr 40px;align-items:start;gap:3%;padding:40px 0;border-bottom:1px solid var(--line);transition:padding .3s}.business-card:hover{padding-left:14px}.card-number{font-family:var(--serif);font-size:1.05rem;color:#777}.business-card h3{font-size:1.15rem;letter-spacing:.09em;margin:0 0 15px}.business-card h3 i{font-family:var(--serif);font-style:normal;color:#999}.business-card p{max-width:680px;margin:0;color:var(--muted);font-size:.85rem}.card-arrow{font-size:1.4rem;transition:transform .3s}.business-card:hover .card-arrow{transform:translate(4px,-4px)}.company{background:var(--white)}.company-table{margin:0;border-top:1px solid var(--line)}.company-table div{display:grid;grid-template-columns:170px 1fr;padding:19px 0;border-bottom:1px solid var(--line);font-size:.88rem}.company-table dt{color:#888}.company-table dd{margin:0}.contact{background:var(--ink);color:var(--white);padding:150px 0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%;}.section-label-light{color:#fff}.contact h2{font-size:clamp(3.4rem,6vw,6.5rem);line-height:1.1;letter-spacing:-.08em;margin:68px 0 35px}.contact-grid>div>p{font-size:.85rem;color:#aaa;max-width:360px}.contact-form{display:flex;flex-direction:column;gap:23px}.contact-form label{font-size:.76rem;letter-spacing:.08em}.contact-form label span,.contact-form label small{font-size:.58rem;color:#aaa;margin-left:9px;font-weight:400}.contact-form input,.contact-form textarea{display:block;width:100%;background:transparent;color:#fff;border:0;border-bottom:1px solid #555;border-radius:0;padding:11px 0;font:inherit;outline:0}.contact-form textarea{resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent)}.contact-form .button{align-self:flex-start;margin-top:8px}.contact-form .button:hover{background:var(--accent);border-color:var(--accent)}.form-note{font-size:.63rem;color:#777;margin:0}.site-footer{background:#0b0b0b;color:#fff;padding:55px 0 25px}.footer-top{display:flex;justify-content:space-between;gap:40px;align-items:start;padding-bottom:70px}.brand-footer{font-size:1.5rem}.footer-nav{display:flex;gap:28px;flex-wrap:wrap;font-size:.62rem;letter-spacing:.16em}.footer-bottom{border-top:1px solid #333;padding-top:20px;display:flex;justify-content:space-between;color:#777;font-size:.63rem;letter-spacing:.06em}.reveal{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s ease}.reveal.is-visible{opacity:1;transform:none}@media(max-width:700px){.container{width:min(calc(100% - 42px),var(--max))}.site-header{height:70px}.menu-toggle{display:flex;flex-direction:column;gap:5px;border:0;background:transparent;padding:10px 0 10px 10px;cursor:pointer}.menu-toggle span{width:22px;height:1px;background:var(--ink);display:block}.menu-toggle b{font-size:.48rem;font-weight:400;letter-spacing:.08em;margin-top:2px}.site-nav{position:absolute;top:70px;left:0;right:0;background:var(--paper);display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:10px 21px 22px;border-bottom:1px solid var(--line);transform:translateY(-140%);transition:transform .35s ease}.site-nav.is-open{transform:translateY(0)}.site-nav a{padding:13px 0;width:100%;font-size:.7rem}.nav-cta{border-bottom:0;padding-bottom:13px}.hero{padding-top:70px;min-height:100svh}.hero-content{padding:70px 0 100px}.hero h1{font-size:clamp(3.4rem,15vw,5.5rem);margin:22px 0 27px}.hero-lead{font-size:.87rem}.hero-grid{background-size:75px 75px;mask-image:linear-gradient(90deg,transparent,#000)}.hero-orb{width:80vw;height:80vw;right:-24%;top:39%;opacity:.7}.orb-two{width:58vw;height:58vw;right:-2%;top:48%}.scroll-note{right:21px;bottom:25px}.section{padding:95px 0}.section-grid,.section-heading,.contact-grid{display:block}.section-label{margin-bottom:56px}.section-body h2,.section-heading h2{font-size:2.55rem;margin-bottom:36px}.section-kicker{margin-bottom:23px}.body-copy{font-size:.84rem}.section-heading{margin-bottom:50px}.business-card{grid-template-columns:42px 1fr 25px;gap:10px;padding:30px 0}.business-card:hover{padding-left:0}.business-card h3{font-size:.95rem;line-height:1.5}.business-card p{font-size:.78rem;line-height:1.9}.card-arrow{font-size:1.1rem}.company-table div{grid-template-columns:95px 1fr;font-size:.78rem;padding:16px 0}.contact{padding:95px 0}.contact h2{font-size:3.8rem;margin:48px 0 30px}.contact-grid>div>p{font-size:.8rem;margin-bottom:65px}.contact-form{gap:20px}.footer-top{display:block;padding-bottom:48px}.footer-nav{margin-top:40px;gap:18px 25px}.footer-bottom{display:block;line-height:2}.footer-bottom span{display:block}.footer-bottom span+span{margin-top:8px}}
