:root{--forest:#17382d;--forest-2:#214d3e;--forest-deep:#102b22;--lime:#c7d65c;--cream:#f2f0e8;--ink:#18201d;--muted:#5f6864;--line:#cbd0c8;--sage-ocean:#aebdab;--white:#fff;--max:1180px;--shadow:0 18px 45px rgba(17,42,33,.12)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:1rem;line-height:1.6}
img{max-width:100%}a{color:inherit}.wrap{width:min(calc(100% - 40px),var(--max));margin-inline:auto}
.skip{position:fixed;left:1rem;top:-5rem;z-index:100;background:#fff;padding:.7rem 1rem}.skip:focus{top:1rem}
.site-header{position:sticky;top:0;z-index:50;background:rgba(242,240,232,.96);border-bottom:1px solid rgba(23,56,45,.15);backdrop-filter:blur(12px)}
.nav-wrap{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;line-height:1.1}.brand strong{display:block;font-size:clamp(1.4rem,2.4vw,2.5rem);letter-spacing:.12em}
.brand-logo{display:block;width:69px;height:81px;flex:0 0 auto;object-fit:contain}
nav{display:flex;align-items:center;gap:clamp(18px, 2.5vw, 40px);margin-left: auto}nav a{font-size:.88rem;font-weight:700;text-decoration:none}nav a:hover,nav a:focus-visible{color:var(--forest-2)}
.nav-cta{padding:10px 17px;border:1px solid var(--forest);border-radius:2px}.menu{display:none;background:none;border:1px solid var(--forest);padding:8px 12px;font:inherit}
.hero{background:var(--forest);color:#fff;overflow:hidden;position:relative}
.hero::before{content:"";position:absolute;right:-160px;top:-180px;width:620px;height:620px;border:1px solid rgba(199,214,92,.26);border-radius:50%;box-shadow:0 0 0 80px rgba(199,214,92,.05),0 0 0 160px rgba(199,214,92,.035)}
.hero-grid{min-height:650px;display:grid;grid-template-columns:1.35fr .65fr;align-items:center;gap:80px;position:relative}
.hero-visual,.service-image{overflow:hidden;background-position:center;background-repeat:no-repeat;background-size:cover}.hero-visual{min-height:440px;border-radius:2px;box-shadow:0 25px 60px rgba(0,0,0,.22)}
.eyebrow{margin:0 0 1rem;color:var(--forest-2);font-size:.75rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.eyebrow.light{color:var(--lime)}
.hero .hero-eyebrow{color:#dbe67e;font-size:1.2rem;font-weight:800;line-height:1.35;letter-spacing:.12em;text-shadow:0 1px 2px rgba(0,0,0,.35)}
h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.08;margin-top:0}h1{font-size:clamp(2.6rem,4.8vw,4.6rem);max-width:850px;margin-bottom:1.7rem;letter-spacing:-.04em}
h2{font-size:clamp(2.5rem,4.5vw,4.6rem);letter-spacing:-.03em;margin-bottom:1.3rem}h3{font-size:1.7rem;margin-bottom:1rem}.lead{max-width:700px;font-size:1.2rem;color:#d8e0dc}
.hero-actions{display:flex;align-items:center;gap:28px;margin-top:2rem}.button{display:inline-flex;justify-content:center;align-items:center;border:0;border-radius:2px;padding:15px 22px;font-size:.85rem;font-weight:800;letter-spacing:.03em;text-decoration:none;cursor:pointer}
.primary{background:var(--lime);color:#14251e}.primary:hover,.primary:focus-visible{background:#dbe67e}.text-link{font-weight:700;text-decoration:none}.text-link span{padding-left:6px}
.hero-band{border-top:1px solid rgba(255,255,255,.13)}.hero-band .wrap{min-height:58px;display:flex;align-items:center;justify-content:space-between;color:#b9c6c0;font-size:.75rem;text-transform:uppercase;letter-spacing:.13em}
.section{padding:110px 0}.section-head{display:grid;grid-template-columns:.45fr 1.2fr .8fr;gap:45px;align-items:start;margin-bottom:55px}.section-head h2{font-size:clamp(2.4rem,4vw,4rem)}.section-head>p:last-child{margin:8px 0 0;color:var(--muted)}
.service-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #b8beb7;border-left:1px solid #b8beb7}.service-card{min-width:0;padding:45px;border-right:1px solid #b8beb7;border-bottom:1px solid #b8beb7;transition:background .25s,transform .25s,box-shadow .25s}
.service-card:hover{background:#fff;transform:translateY(-3px);box-shadow:var(--shadow)}.service-image{display:block;height:280px;padding:0;margin:-20px -20px 32px}.service-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.service-card p{color:var(--muted)}.service-card ul{padding-left:18px;margin-top:24px}.service-card li{margin:5px 0;font-size:.9rem}
.approach{background:var(--forest);color:#fff}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.approach-copy>p{font-size:1.18rem;color:#d0dbd6;margin-top:4px}.principles{margin-top:50px}.principles div{display:grid;grid-template-columns:120px 1fr;gap:25px;padding:20px 0;border-top:1px solid rgba(255,255,255,.18)}.principles strong{color:var(--lime)}.principles span{color:#c2cfca}
.capability-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;align-items:start}.section-head.compact{display:block;margin:0}.section-head.compact h2{font-size:3.2rem}.tag-list{display:flex;flex-wrap:wrap;gap:10px}.tag-list span{background:#fff;border:1px solid var(--line);padding:11px 16px;font-weight:700;font-size:.86rem}
.reach{background:#e4e7df;overflow:hidden}.reach-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.reach p:last-child{color:var(--muted);font-size:1.1rem}
.globe-stage{display:grid;place-items:center;min-height:440px;perspective:1000px}.timber-globe{position:relative;width:min(100%,360px);aspect-ratio:1;overflow:hidden;border-radius:50%;background:var(--sage-ocean);box-shadow:inset -42px -20px 62px rgba(14,39,31,.36),inset 22px 16px 38px rgba(255,255,255,.38),0 28px 48px rgba(23,56,45,.2);transform:rotate(-2deg)}
.globe-map{position:absolute;inset:0 auto 0 0;width:200%;background-color:var(--sage-ocean);background-image:url("images/timber-world-map.png"),url("images/timber-world-map.png");background-repeat:no-repeat,no-repeat;background-position:0 50%,100% 50%;background-size:60% auto,60% auto;animation:globe-spin 32s linear infinite;will-change:transform}
.timber-globe::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(circle at 31% 24%,rgba(255,255,255,.3),transparent 27%),linear-gradient(90deg,rgba(15,40,31,.22),transparent 18%,transparent 70%,rgba(11,31,24,.38));box-shadow:inset 0 0 0 1px rgba(23,56,45,.18)}
.timber-globe:hover .globe-map{animation-play-state:paused}@keyframes globe-spin{to{transform:translateX(-50%)}}
.consultation{background:var(--forest-deep);color:#fff}.consultation-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:start}.consultation-grid>div>p:not(.eyebrow){color:#bdcbc5;font-size:1.1rem}.small{font-size:.85rem!important;margin-top:2rem}
#contact-form{background:#fff;color:var(--ink);padding:clamp(26px,4vw,44px);border-top:5px solid var(--lime);box-shadow:0 28px 60px rgba(0,0,0,.18)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{min-width:0}
#contact-form label{display:block;margin:0 0 7px;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}#contact-form input,#contact-form textarea{width:100%;border:1px solid #c6cdc8;border-radius:2px;background:#f7f7f3;padding:13px 12px;margin:0 0 20px;color:var(--ink);font:1rem/1.45 Arial,sans-serif;text-transform:none;letter-spacing:0;transition:border-color .2s,box-shadow .2s,background .2s}
#contact-form textarea{min-height:150px;resize:vertical}#contact-form input:hover,#contact-form textarea:hover{border-color:#83928b}#contact-form input:focus,#contact-form textarea:focus{outline:none;border-color:var(--forest-2);background:#fff;box-shadow:0 0 0 3px rgba(33,77,62,.16)}#contact-form [aria-invalid="true"]{border-color:#a33a2b}.pale{width:100%;margin-top:3px}.form-note{margin:12px 0 0;min-height:24px;color:var(--forest);font-size:.86rem}.form-note.error{color:#8b2d22}
footer{background:var(--cream);color:var(--forest);padding:48px 0;border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:36px}.footer-brand{display:flex;align-items:center;gap:14px;text-decoration:none}.footer-brand strong{letter-spacing:.1em}.footer-details p{margin:0;color:var(--muted);font-size:.88rem}.copyright{margin:0;color:var(--muted);font-size:.8rem;white-space:nowrap}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.globe-map{animation:none;transform:translateX(-12%)}.service-card{transition:none}}
@media(max-width:850px){.menu{display:block}nav{position:absolute;top:82px;left:0;right:0;background:var(--cream);padding:20px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line);display:none}nav.open{display:flex}.hero-grid{grid-template-columns:1fr;gap:42px;min-height:auto;padding:90px 0 70px}.hero-visual{min-height:360px}.section-head,.approach-grid,.capability-grid,.reach-grid,.consultation-grid{grid-template-columns:1fr;gap:38px}.service-grid{grid-template-columns:1fr}.section{padding:80px 0}.globe-stage{min-height:360px}.timber-globe{width:min(78vw,340px)}.footer-grid{grid-template-columns:1fr;gap:20px}}
@media(max-width:560px){.wrap{width:min(calc(100% - 28px),var(--max))}.brand-logo{width:54px;height:64px}.brand strong{font-size:1.25rem}.nav-wrap{min-height:72px}nav{top:72px}.hero-actions{align-items:stretch;flex-direction:column}.hero-band .wrap{gap:28px;justify-content:center}.hero-band .wrap span:first-child,.hero-band .wrap span:last-child{display:none}.service-card{padding:30px}.service-image{height:235px;margin:-10px -10px 26px}.field-row{grid-template-columns:1fr;gap:0}.principles div{grid-template-columns:1fr;gap:2px}.section-head.compact h2{font-size:2.5rem}.globe-stage{min-height:300px}.timber-globe{width:min(88vw,290px)}.hero .hero-eyebrow{font-size:1.05rem}.hero h1{font-size:2.55rem}}
