:root { --ink:#183c2e; --deep:#0d281e; --paper:#faf9f5; --cream:#f1eee5; --sage:#e5e7dd; --muted:#5e7066; --line:rgba(24,60,46,.18); }

* { box-sizing:border-box; }

html { scroll-behavior:smooth; -webkit-text-size-adjust:100%; }

body { margin:0; background:var(--paper); color:var(--ink); font-family:"DM Sans",sans-serif; -webkit-tap-highlight-color:transparent; }

img { max-width:100%; display:block; }
 a { color:inherit; }
 button,a { touch-action:manipulation; }
 a:focus-visible { outline:2px solid #bc704d; outline-offset:4px; }

.wrap { width:min(1240px,calc(100% - 80px)); margin:auto; }
.eyebrow { margin:0; font-size:10px; letter-spacing:.16em; text-transform:uppercase; font-weight:600; }
.eyebrow.light { color:#e9ede3; }

.tree-header { height:76px; display:flex; align-items:center; justify-content:space-between; position:absolute; inset:0 0 auto; z-index:4; padding:0 40px; color:#fff; border-bottom:1px solid rgba(255,255,255,.2); }
.tree-brand { display:flex; gap:10px; align-items:center; text-decoration:none; font:600 21px/1 "Oswald",sans-serif; letter-spacing:.08em; }
.tree-brand svg { width:22px; height:27px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.back-link { text-decoration:none; text-transform:uppercase; font-size:10px; letter-spacing:.14em; font-weight:600; }
.back-link span { margin-right:9px; font-size:17px; vertical-align:-1px; }

.tree-hero { min-height:680px; height:88vh; height:88svh; position:relative; display:flex; align-items:end; color:#fff; overflow:hidden; background:var(--deep); }
.tree-hero img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.tree-hero:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(7,25,18,.72),rgba(7,25,18,.12) 72%),linear-gradient(0deg,rgba(7,25,18,.57),transparent 52%); }
.hero-copy { position:relative; z-index:1; width:min(1240px,calc(100% - 80px)); margin:0 auto; padding-bottom:82px; }
.hero-copy h1 { max-width:690px; margin:13px 0 16px; font:500 clamp(60px,8vw,118px)/.92 "Playfair Display",Georgia,serif; letter-spacing:-.06em; }
.hero-copy h1 em { font-weight:500; }
.latin { font:italic 17px/1.3 "Playfair Display",Georgia,serif; color:#f0eee7; margin:0; }
.hero-note { position:absolute; z-index:1; right:40px; bottom:30px; margin:0; font-size:10px; letter-spacing:.13em; }

.overview { display:grid; grid-template-columns:27% 1fr; gap:20px; padding:120px 0; }
.section-label { padding-top:10px; color:#63766c; font-size:10px; letter-spacing:.16em; font-weight:600; text-transform:uppercase; }
.overview-copy > p { max-width:820px; margin:0 0 55px; font:500 clamp(33px,4vw,61px)/1.11 "Playfair Display",Georgia,serif; letter-spacing:-.045em; }
.overview-copy > p em { font-weight:500; }
.field-note { display:grid; grid-template-columns:minmax(0,1fr) 210px; min-height:215px; margin:0 0 50px; background:var(--sage); }
.field-note img { width:100%; height:215px; object-fit:cover; }
.field-note figcaption { display:flex; flex-direction:column; justify-content:end; padding:25px; }
.field-note span { display:block; margin-bottom:auto; color:#62766b; font-size:10px; letter-spacing:.13em; text-transform:uppercase; font-weight:600; }
.field-note strong { display:block; font:500 26px/1.04 "Playfair Display",Georgia,serif; letter-spacing:-.04em; }
.field-note small { display:block; margin-top:10px; color:#63766c; font-size:11px; line-height:1.45; }
.specs { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); }
.spec { min-height:128px; padding:24px 24px 20px 0; border-bottom:1px solid var(--line); }
.spec:nth-child(3n+2),.spec:nth-child(3n+3) { padding-left:23px; }
.spec:nth-child(3n+2) { border-left:1px solid var(--line); }
.spec:nth-child(3n+3) { border-left:1px solid var(--line); }
.spec small { display:block; color:#687a70; font-size:10px; letter-spacing:.12em; text-transform:uppercase; margin-bottom:13px; }
.spec strong { display:block; font:500 22px/1.1 "Playfair Display",Georgia,serif; letter-spacing:-.03em; }
.spec span { display:block; color:var(--muted); font-size:12px; margin-top:7px; line-height:1.35; }

.story { background:var(--sage); padding:120px 0; }
.story-inner { display:grid; grid-template-columns:1.04fr .96fr; gap:10vw; align-items:start; }
.story-copy h2,.care-copy h2,.related h2 { margin:24px 0 28px; font:500 clamp(42px,4.6vw,68px)/1 "Playfair Display",Georgia,serif; letter-spacing:-.05em; }
.story-copy h2 em,.care-copy h2 em,.related h2 em { font-weight:500; }
.story-copy > p { max-width:475px; color:#4f6358; font-size:15px; line-height:1.78; margin:0 0 17px; }
.story-quote { margin:55px 0 0; padding-top:20px; border-top:1px solid rgba(24,60,46,.25); font:500 26px/1.2 "Playfair Display",Georgia,serif; max-width:400px; }
.story-aside { padding-top:6px; }
.detail-list { margin:0; padding:0; list-style:none; border-top:1px solid var(--line); }
.detail-list li { padding:17px 0; border-bottom:1px solid var(--line); display:grid; grid-template-columns:120px 1fr; gap:15px; font-size:13px; line-height:1.45; }
.detail-list b { font-size:10px; letter-spacing:.11em; text-transform:uppercase; color:#61756a; }

.stages { padding:122px 0; }
.stages-heading { display:flex; align-items:end; justify-content:space-between; margin-bottom:43px; }
.stages-heading h2 { margin:16px 0 0; font:500 clamp(44px,4.6vw,70px)/1 "Playfair Display",Georgia,serif; letter-spacing:-.055em; }
.stages-heading > p { max-width:310px; margin:0; color:var(--muted); font-size:14px; line-height:1.6; }
.stage-grid { display:grid; grid-template-columns:.82fr 1.18fr; gap:18px; }
.stage-card { position:relative; overflow:hidden; background:var(--deep); min-height:500px; color:#fff; }
.stage-card img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; }
.stage-card:first-child img { object-position:center; }
.stage-card:after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(5,22,15,.78),transparent 55%); }
.stage-copy { position:absolute; z-index:1; left:26px; right:26px; bottom:24px; }
.stage-copy small { display:block; margin-bottom:6px; font-size:10px; letter-spacing:.14em; text-transform:uppercase; }
.stage-copy h3 { margin:0 0 5px; font:500 35px/1 "Playfair Display",Georgia,serif; letter-spacing:-.04em; }
.stage-copy p { margin:0; font-size:12px; color:#eef2e9; line-height:1.5; }

.care { background:var(--deep); color:#f7f5ec; padding:120px 0; }
.care-inner { display:grid; grid-template-columns:27% 1fr; gap:20px; }
.care .section-label { color:#aabcae; }
.care-copy { display:grid; grid-template-columns:1fr 1fr; gap:70px; }
.care-copy h2 { margin-top:0; }
.care-copy > div > p { color:#c7d3c7; line-height:1.7; font-size:15px; }
.care-notes { list-style:none; padding:0; margin:0; border-top:1px solid rgba(255,255,255,.25); }
.care-notes li { min-height:70px; display:grid; grid-template-columns:30px 1fr; gap:16px; align-items:center; border-bottom:1px solid rgba(255,255,255,.2); color:#e4eadf; font-size:13px; line-height:1.45; }
.care-notes span { color:#aebfae; font-size:10px; letter-spacing:.1em; }

.cta { padding:110px 0; text-align:center; background:#416a52; color:#fff; }
.cta p { margin:0 0 18px; font-size:10px; letter-spacing:.16em; text-transform:uppercase; }
.cta h2 { margin:0 auto 28px; max-width:700px; font:500 clamp(44px,5vw,75px)/1 "Playfair Display",Georgia,serif; letter-spacing:-.055em; }
.cta h2 em { font-weight:500; }
.cta-link { display:inline-flex; align-items:center; justify-content:center; min-height:52px; padding:15px 19px; background:var(--cream); color:var(--ink); text-decoration:none; font-size:11px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; }
.cta-link span { margin-left:13px; font-size:17px; }
.tree-footer { display:flex; justify-content:space-between; padding:30px 0; color:var(--muted); font-size:12px; }
.tree-footer a { color:var(--ink); text-decoration:none; }

@media (max-width:720px) { .wrap,.hero-copy { width:calc(100% - 40px); }
.tree-header { height:70px; padding:0 20px; }
.tree-brand { font-size:19px; }
.tree-brand svg { width:20px; }
.tree-hero { min-height:620px; height:76svh; }
.tree-hero img { object-position:65% center; }
.hero-copy { padding-bottom:64px; }
.hero-copy h1 { font-size:59px; }
.latin { font-size:16px; }
.hero-note { display:none; }
.overview { display:block; padding:78px 0; }
.section-label { padding-top:0; margin-bottom:24px; }
.overview-copy > p { font-size:35px; margin-bottom:32px; }
.field-note { grid-template-columns:1fr; min-height:0; margin-bottom:38px; }
.field-note img { height:230px; }
.field-note figcaption { min-height:145px; padding:21px; }
.field-note strong { font-size:25px; }
.specs { grid-template-columns:1fr 1fr; }
.spec { min-height:117px; padding:20px 14px 18px 0; }
.spec:nth-child(3n+2),.spec:nth-child(3n+3) { padding-left:0; }
.spec:nth-child(odd) { padding-right:17px; }
.spec:nth-child(even) { padding-left:17px; border-left:1px solid var(--line); }
.spec:nth-child(3n+3) { border-left:0; }
.spec:nth-child(4) { border-left:1px solid var(--line); }
.spec strong { font-size:20px; }
.story { padding:78px 0; }
.story-inner { grid-template-columns:1fr; gap:48px; }
.story-copy h2,.care-copy h2 { font-size:48px; }
.story-quote { margin-top:38px; font-size:25px; }
.detail-list li { grid-template-columns:105px 1fr; }
.stages { padding:78px 0; }
.stages-heading { display:block; margin-bottom:30px; }
.stages-heading h2 { font-size:47px; margin-bottom:20px; }
.stage-grid { grid-template-columns:1fr; }
.stage-card { min-height:475px; }
.stage-card:first-child { min-height:445px; }
.care { padding:78px 0; }
.care-inner { grid-template-columns:1fr; gap:0; }
.care-copy { grid-template-columns:1fr; gap:30px; }
.cta { padding:80px 20px; }
.cta h2 { font-size:48px; }
.tree-footer { flex-wrap:wrap; gap:15px; }
.tree-footer span { width:100%; order:3; }
 }

@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }
 }
