@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--ink:#233b2c;--cream:#f7f4eb;--orange:#bb532f;--line:#d6d8ca;--serif:'Playfair Display',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;width:100%;object-fit:cover}figure,p,h1,h2,h3{margin:0}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:6px}.skip{position:absolute;top:-100px;padding:12px;background:white;z-index:20}.skip:focus{top:0}.header{display:flex;align-items:center;justify-content:space-between;padding:24px 5%;border-bottom:1px solid var(--line);gap:30px}.brand{display:inline-flex;flex-direction:column;text-align:center;line-height:1.15;flex-shrink:0}.brand-name{font-family:var(--serif);font-size:29px;font-weight:600;letter-spacing:3px}.brand-sub{font-size:11px;letter-spacing:4px;margin-top:6px}.header nav{display:flex;gap:32px;font-size:14px}.header nav a:hover{color:var(--orange)}.header-note{font-family:var(--serif);font-style:italic;font-size:16px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:720px;padding:64px 5% 70px;gap:36px;max-width:1600px;margin:auto}.hero-copy{padding:32px 0 0}.eyebrow{font-size:12px;line-height:1.6;letter-spacing:2px;font-weight:700}.hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(64px,6.6vw,106px);line-height:1.08;letter-spacing:-4px;margin:25px 0 30px}em{font-weight:400;color:var(--orange)}.hero-copy>p:not(.eyebrow){color:#54604f;line-height:1.8;font-size:17px}.button{display:inline-flex;align-items:center;gap:48px;background:var(--ink);color:white;padding:16px 24px;font-size:14px;margin-top:34px}.button:hover{background:#365a40}.button span{font-size:22px}.hero-foot{display:flex;gap:24px;margin-top:65px;padding-top:18px;border-top:1px solid var(--line);font-size:10px;letter-spacing:2px;max-width:420px}.hero-photos{position:relative;padding:0 0 80px 55px}.hero-main{height:540px;position:relative}.hero-main img{height:100%;object-position:50% 43%}.hero-main figcaption{position:absolute;bottom:0;left:0;right:0;color:white;padding:42px 20px 16px;background:linear-gradient(transparent,#152a1dd6);font-size:13px}.hero-small{position:absolute;bottom:0;left:0;width:42%;transform:rotate(-5deg);padding:9px 9px 13px;background:white;box-shadow:0 10px 25px #233b2c20}.hero-small img{height:205px;object-position:center 58%}.hero-small figcaption{font-family:var(--serif);font-style:italic;font-size:14px;text-align:center;margin-top:8px}.photo-stamp{position:absolute;right:-14px;top:-23px;width:108px;height:108px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--orange);color:white;font-size:12px;letter-spacing:2px;transform:rotate(12deg);border:1px solid #f7f4eb;outline:5px solid var(--orange)}.photo-stamp em{font-family:var(--serif);font-size:19px;letter-spacing:0;color:white}.ribbon{background:var(--ink);color:#eeeeda;display:flex;align-items:center;justify-content:space-around;padding:23px 4%;gap:20px;font-size:11px;letter-spacing:2px}.ribbon b{font-size:24px;font-weight:400;color:#d2aa68}.section{padding:90px 6%;max-width:1600px;margin:auto}h2{font-family:var(--serif);font-weight:400;font-size:clamp(40px,4vw,62px);line-height:1.16;letter-spacing:-1.6px}.intro>.eyebrow{margin-bottom:26px}.intro>div{display:grid;grid-template-columns:1fr 1fr;gap:80px}.intro-text{max-width:540px;padding-top:6px;color:#596151}.intro-text p+p{margin-top:20px}.animals{padding-top:20px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:38px}.section-heading h2{margin-top:13px}.section-heading>p{color:#687060;font-size:14px}.animal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.animal-grid img{aspect-ratio:3/4;object-position:center 44%}.animal-grid figure:nth-child(2){padding-top:58px}.animal-grid figcaption{padding-top:18px}.animal-grid figcaption span{font-size:10px;letter-spacing:1.8px}.animal-grid h3{font-family:var(--serif);font-size:22px;font-weight:400;margin-top:8px}.family-story{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;background:#e8ebdf}.story-photo{position:relative;padding-bottom:25px}.story-photo img{aspect-ratio:4/4.5;object-position:50% 50%}.photo-label{display:inline-block;padding:10px 22px;background:#fffdf7;position:absolute;bottom:5px;left:25px;transform:rotate(-3deg);font-family:var(--serif);font-style:italic}.story-copy h2{margin:24px 0 28px;max-width:11ch;line-height:1.22;letter-spacing:-1px;text-wrap:balance}.story-copy>p:not(.eyebrow){max-width:430px;color:#58644f;margin-bottom:18px}.text-link{display:inline-block;border-bottom:1px solid currentColor;padding-bottom:7px;font-size:14px;margin-top:15px}.text-link span{margin-left:20px}.work-story{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:32px;align-items:center}.work-intro h2{font-size:43px;margin:20px 0 25px}.work-intro>p:last-child{color:#66705d;max-width:340px}.work-story figure{align-self:start}.work-story figure:last-child{padding-top:65px}.work-story img{aspect-ratio:3/4}.work-story figcaption{font-family:var(--serif);font-style:italic;padding-top:12px}.journal{border-top:1px solid var(--line);padding-top:75px}.journal-grid{columns:4;column-gap:20px}.moment{break-inside:avoid;margin:0 0 25px}.moment button{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in;overflow:hidden;position:relative}.moment button img{height:auto;transition:transform .4s}.moment button:hover img{transform:scale(1.035)}.moment button:after{content:'↗';position:absolute;right:12px;bottom:12px;width:30px;height:30px;background:#f7f4ebeb;border-radius:50%;display:grid;place-items:center;color:var(--ink)}.moment figcaption{font-size:13px;padding-top:10px;color:#596151}.closing{background:var(--ink);text-align:center;color:var(--cream);padding:85px 25px 75px}.closing .eyebrow{color:#d2d8c7}.closing h2{font-size:clamp(42px,5vw,74px);margin:30px 0}.closing h2 em{color:#dfbd82}.closing .text-link{color:#e0e6d4}footer{padding:40px 5%;display:flex;gap:30px;align-items:center;justify-content:space-between}footer p,footer>span{font-size:12px;color:#67705e}footer .brand-name{font-size:22px}footer .brand-sub{font-size:9px}dialog{border:0;padding:0;background:#152019;color:#fff;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0}dialog::backdrop{background:#152019}.viewer{height:100%;display:flex;align-items:center;justify-content:center;padding:60px 75px 70px;position:relative}.viewer figure{height:100%;max-width:100%;display:flex;flex-direction:column;align-items:center;gap:15px}.viewer img{height:calc(100% - 40px);max-width:100%;width:auto;object-fit:contain}.viewer figcaption{text-align:center;font-size:15px}.viewer button{position:absolute;border:1px solid #ffffff65;background:#152019;color:white;width:46px;height:46px;border-radius:50%;cursor:pointer;font-size:30px;line-height:1}.close{top:18px;right:22px}.previous{left:18px;top:48%}.next{right:18px;top:48%}.photo-count{position:absolute;bottom:20px;font-size:12px;letter-spacing:2px}body:has(dialog[open]){overflow:hidden}@media(min-width:1600px){.family-story{max-width:none;padding-left:calc((100vw - 1408px)/2);padding-right:calc((100vw - 1408px)/2)}}@media(max-width:1050px){.header-note{display:none}.hero{min-height:650px;gap:20px}.hero h1{font-size:76px}.hero-photos{padding-left:25px}.hero-main{height:480px}.hero-small{width:50%}.hero-small img{height:160px}.hero-foot{margin-top:40px}.work-story{grid-template-columns:1fr 1fr}.work-intro{grid-column:1/-1}.work-intro>p:last-child{max-width:600px}.work-story figure:last-child{padding-top:0}.journal-grid{columns:3}.ribbon{font-size:9px;letter-spacing:1px}}@media(max-width:700px){.header{padding:20px 6%;gap:20px;flex-wrap:wrap}.brand-name{font-size:24px}.brand-sub{font-size:9px}.header nav{gap:18px;font-size:12px}.hero{display:block;padding:30px 6% 50px}.hero-copy{padding-top:10px}.eyebrow{font-size:10px;letter-spacing:1.6px}.hero h1{font-size:70px;letter-spacing:-3px;margin-top:18px}.hero-copy>p:not(.eyebrow){font-size:16px}.hero-foot{display:none}.hero-photos{margin-top:55px;padding-left:50px;padding-bottom:65px}.hero-main{height:440px}.hero-small{width:46%}.hero-small img{height:185px}.photo-stamp{right:-5px;width:92px;height:92px;font-size:10px}.ribbon{padding:18px 6%;flex-wrap:wrap;gap:10px 18px}.ribbon span{font-size:9px}.ribbon b{font-size:15px}.ribbon b:last-of-type,.ribbon span:last-child{display:none}.section{padding:55px 6%}.intro>div{display:block}.intro-text{margin-top:25px}.section-heading{align-items:start;display:block;margin-bottom:28px}.section-heading>p{margin-top:20px}.animal-grid{gap:14px;grid-template-columns:1fr 1fr}.animal-grid figure:nth-child(2){padding-top:35px}.animal-grid figure:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:18px;margin-top:12px}.animal-grid h3{font-size:19px}.animal-grid figcaption span{font-size:9px;letter-spacing:1px}.family-story{display:flex;flex-direction:column;gap:35px}.story-photo{width:100%}.story-copy{width:100%}.story-copy h2{max-width:15ch}.work-story{gap:20px}.work-intro h2{font-size:40px}.journal-grid{columns:2;column-gap:14px}.moment{margin-bottom:18px}.moment figcaption{font-size:12px}.closing{padding:60px 6%}.closing h2{font-size:42px}footer{flex-wrap:wrap;padding:35px 6%;gap:20px}footer p{max-width:155px}footer>span{width:100%;border-top:1px solid var(--line);padding-top:20px}.viewer{padding:70px 12px 100px}.viewer .previous,.viewer .next{top:auto;bottom:22px}.viewer .previous{left:24px}.viewer .next{right:24px}.photo-count{bottom:32px}.viewer figcaption{font-size:14px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.photo-stamp{font-size:10px;letter-spacing:1px;line-height:1.5}.photo-stamp em{font-size:17px}@media(max-width:700px){.photo-stamp{font-size:9px;letter-spacing:.5px}.photo-stamp em{font-size:15px}}
