/* Max's warm, conversational brand direction. Fonts are bundled with the site. */
@font-face{font-family:Barlow;src:url('assets/fonts/barlow-regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Barlow;src:url('assets/fonts/barlow-medium.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:Barlow;src:url('assets/fonts/barlow-semibold.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Barlow;src:url('assets/fonts/barlow-bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Bree Serif';src:url('assets/fonts/bree-serif.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{--pine:#0d3b29;--deep:#082c1d;--cream:#fff7eb;--sage:#f1e4c8;--ink:#163728;--muted:#58604c;--line:#d2baa3;--gold:#be4b1b;--lake:#b34c16;--display:'Bree Serif',Rockwell,Georgia,serif;--body:Barlow,'Trebuchet MS',sans-serif}
body{font-family:var(--body);font-size:17px;line-height:1.65;background:var(--cream);color:var(--ink)}
h1,h2,h3,h4{font-family:var(--display);font-weight:400;letter-spacing:-.025em;line-height:1.08}
h2{font-size:clamp(42px,4.4vw,64px)}
h2 em,h3 em{font-style:normal}
h3{font-size:32px}
.eyebrow{font-size:12px;letter-spacing:1.4px;font-weight:700;color:var(--pine)}
p{color:var(--muted)}
.brand b,.nav .brand b{font-family:var(--display);font-weight:400;font-size:22px;letter-spacing:1px}
.brand small{font-family:var(--body);font-size:10px;letter-spacing:1.3px}
.immersive-home .nav-links{font-size:16px;font-weight:500;gap:24px}
.nav{gap:20px}.nav .brand{gap:12px}
.immersive-home>header{color:var(--cream)}
.immersive-home.past-seasons>header{background:#0a3322;box-shadow:0 3px 0 #05241622}
.immersive-home>header .btn{background:#ba4819;border:2px solid #ba4819;color:#123523;box-shadow:0 4px 0 #7c3015;padding:12px 22px}
.immersive-home>header .btn:hover{background:#a23b14;box-shadow:0 2px 0 #7c3015}
.btn,.immersive-home .btn{font-size:17px;font-weight:600;line-height:1.3;min-height:56px;padding:16px 25px;border:2px solid #072e1e;border-radius:19px 22px 19px 22px;background:var(--pine);color:#fff7e5;box-shadow:0 5px 0 #052719;transition:transform .2s,box-shadow .2s,background .2s}
.btn:hover,.immersive-home .btn:hover{background:#1b543c;transform:translateY(-2px);box-shadow:0 7px 0 #052719}
.btn:active,.immersive-home .btn:active{transform:translateY(3px);box-shadow:0 2px 0 #052719}
.link{font-size:16px;font-weight:600;line-height:1.35;gap:22px;padding:14px 20px;min-height:52px;border:2px solid #bf9679;border-radius:17px 20px 17px 20px;background:#fffbef;box-shadow:0 3px 0 #d8baa0;color:var(--pine);transition:transform .2s,background .2s,box-shadow .2s}
.link:hover{background:#f4d1b9;transform:translateY(-2px);box-shadow:0 5px 0 #d8baa0}
.link:active{transform:translateY(2px);box-shadow:0 1px 0 #d8baa0}
.arrow{font-size:24px}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--lake);outline-offset:5px}
/* Keep the cabin footage full-bleed, with a warmer tint and readable lettering. */
.season-shade{background:linear-gradient(90deg,#06271ad9,#082b1c9c 40%,#082b1c10 80%),linear-gradient(0deg,#052518dd,transparent 40%)}
.immersive-home .seasonal-hero:before{background:linear-gradient(180deg,#052518b8,transparent)}
.seasonal-hero .hero-copy{max-width:720px}
.season-copy h2{font-family:var(--display);font-size:clamp(48px,5.2vw,76px);line-height:1.04;letter-spacing:-.035em}
.season-copy h2 em{font-style:normal;color:#f49a60}
.seasonal-hero .eyebrow,.season-kicker{font-size:12px;color:#fff4dc;letter-spacing:1.6px}
.seasonal-hero .season-copy p{font-size:18px;line-height:1.55;max-width:500px;color:#fff7eb}
.seasonal-hero .hero-note{font-size:13px;color:#fff4dc}
.seasonal-hero .btn{background:#f49a60;border-color:#f49a60;color:#0c3321;box-shadow:0 5px 0 #7c3015}
.seasonal-hero .btn:hover{background:#a23b14;border-color:#a23b14;box-shadow:0 7px 0 #7c3015}
.seasonal-hero .link{background:#fff7eb14;color:#fff7eb;border-color:#fff7ebaa;box-shadow:none}
.seasonal-hero .link:hover{background:#fff7eb30}
.season-nav{gap:12px}
.immersive-home .season-nav button{font-size:16px;padding:10px 14px 16px;background:#fff7eb12;border:1px solid #fff7eb55;border-radius:16px;color:#fff7eb}
.immersive-home .season-nav button[aria-pressed=true]{background:#fff7eb;color:#0e3826;border-color:#fff7eb}
.season-button-number{font-size:10px}.season-meter{left:14px;right:14px;bottom:7px;background:#b09a6955;border-radius:3px}.season-meter:after{background:#d5672b}
.season-scroll-hint{font-size:10px;color:#fff4df}.season-play,.season-scroll-hint a{font-size:12px;color:#fff4df;border-color:#fff4df99}
.seasonal-hero p.season-disclosure{color:#fff4df;font-size:10px;max-width:230px}
/* Scrapbook: warm ivory paper, orange and forest tape, and roomy photo captions. */
.scrapbook-section{background:#f5e8d8;border-radius:44px 44px 0 0}
.scrapbook-section:before{background:radial-gradient(ellipse at 15% 30%,#fff7e5b3,transparent 70%)}
.scrapbook-intro h2{font-size:clamp(44px,4.4vw,66px)}
.scrapbook-intro h2 em{color:var(--pine)}
.scrapbook-intro .eyebrow,.scrapbook-byline>span:last-child{font-size:11px;color:#765323}
.scrapbook-byline em{font-family:var(--display);font-style:normal;color:var(--pine);font-size:32px}
.scrapbook-intro p{font-size:18px;line-height:1.65;max-width:380px}
.scrapbook-intro .scrapbook-coming{font-size:15px;color:#58604c}
.scrapbook-handwritten{font-family:var(--display);font-style:normal;font-size:22px;color:#a14d1b}
.scrapbook-card{background:#fffcf5;border-color:#ceb89e;box-shadow:0 7px 0 #9c732a22,0 12px 22px #193d2215}
.scrapbook-tape{background:#d26a3b99}.scrapbook-card:nth-child(even) .scrapbook-tape{background:#346449a6}
.scrapbook-caption{font-family:var(--display);font-style:normal;font-size:19px;min-height:72px}
.scrapbook-caption small{font-family:var(--body);font-size:12px;color:#62604c}
.scrapbook-dialog{background:#fff7eb;color:var(--ink)}.scrapbook-dialog::backdrop{background:#052418db}
.scrapbook-close,.scrapbook-controls button{background:#f5c9ad;color:var(--pine);min-width:46px;min-height:46px;border-color:#bf835f}
.scrapbook-dialog-copy p{font-size:17px}.scrapbook-controls>span{font-size:14px;color:var(--muted)}
.location-strip{background:#edcfb8;border-color:#c59b7d}
.strip{font-size:14px;padding-top:25px;padding-bottom:25px;flex-wrap:wrap}
.strip-label{font-size:11px;color:#5c502f;letter-spacing:1px}.strip strong{font-size:15px;font-weight:600}.strip span+span:before{color:var(--pine);margin-right:14px}
.section-head p{font-size:18px;line-height:1.6;max-width:350px}
/* Every service is a distinct, pressable choice. No automatic switching. */
.tabs{gap:12px;border:0;padding:3px 3px 8px;margin-bottom:27px;flex-wrap:wrap;overflow:visible}
.immersive-home .tab,.tab:first-child{font-size:17px;font-weight:600;line-height:1.35;padding:17px 21px;margin:0;min-height:60px;border:2px solid #c29a7e;border-radius:19px;background:#fffcf5;color:#214530;box-shadow:0 4px 0 #cba78b;white-space:normal;flex:1;transition:background .2s,transform .2s,box-shadow .2s}
.immersive-home .tab:hover{background:#f4d1b9;transform:translateY(-2px)}
.immersive-home .tab[aria-selected=true]{background:var(--pine);border-color:#082d1e;color:#fff7eb;box-shadow:0 4px 0 #082a1c}
.service-indicator{display:none}
.immersive-home .tab-panel{background:#efe0cf;border:1px solid #cdb399;border-radius:32px;box-shadow:0 9px 0 #dcc6b160}
.service-visual-panel .service-copy{padding:36px}
.service-visual-panel .service-copy h3{font-size:clamp(32px,3vw,42px);max-width:390px}
.service-visual-panel .service-copy>p{font-size:18px;line-height:1.6;margin:22px 0 28px}
.service-visual-panel .service-list{justify-content:start;align-items:stretch;gap:15px}
.service-visual-panel .service-step{justify-content:flex-start}.service-visual-panel .service-step strong{font-size:16px;font-weight:500;line-height:1.5}
.service-visual-panel .step-num{font-family:var(--display);font-size:12px;width:34px;height:34px;flex:0 0 34px;border-color:#af935c;color:#0d3b29;background:#fff2d4}
.walkthrough{background:#fffcf5;border:2px solid #c9b096;border-radius:25px 32px 25px 32px;box-shadow:0 5px 0 #bca28a44;padding:20px}
.walkthrough-heading>span{font-family:var(--display);font-style:normal;font-size:25px;color:var(--pine)}
.walkthrough-heading small{font-size:10px;color:#5f6046;letter-spacing:.6px}
.walkthrough-scene{background:#f7ead8}
.walkthrough-marker{width:50px;height:50px;min-width:50px;font-family:var(--display);font-size:19px;background:#fff7eb;color:var(--pine);border-color:#fff7eb;box-shadow:0 4px 0 #082a1c55}
.walkthrough-marker[aria-pressed=true]{background:var(--pine);color:#fff7eb;box-shadow:0 0 0 5px #fff7eba6,0 4px 0 #082a1c55}
.walkthrough-marker:hover{background:#f2a071;color:#082a1c}
.walkthrough-marker:focus-visible,.walkthrough-next:focus-visible{outline-color:var(--lake)}
.walkthrough-caption{font-family:var(--display);font-style:normal;font-size:17px;color:#36482e}
.walkthrough-kicker{font-size:11px;font-weight:600;color:#9b4717;letter-spacing:.8px}
.walkthrough-tip h4{font-family:var(--display);font-size:29px;line-height:1.12;color:#123e2a}
.walkthrough-tip p{font-size:16px;line-height:1.65;color:var(--muted);min-height:80px}
.walkthrough-footer{border-color:#d4bba3;padding-top:14px}
.walkthrough-next{font-size:15px;background:#efb68d;border:1px solid #c48a65;border-radius:14px;padding:10px 16px;box-shadow:0 3px 0 #c99575;color:#20442d}
.walkthrough-count{font-size:13px;color:#5f6046}.walkthrough-disclosure{font-size:10px;color:#6b6951;margin-top:15px}
/* Deep forest sections echo the supplied wildlife artwork. */
.lake-section{background:#103e2b;color:#fff7eb}
.lake-section .eyebrow,.lake-section h2 em{color:#f4a36d}
.lake-section p{font-size:18px;line-height:1.65;color:#f8eed8}
.lake-section .link{background:#fff7eb;color:#16412b;border-color:#c96c3a;box-shadow:0 4px 0 #062517}
.lake-photo{background:#0a2e20;border:2px solid #72926b;color:#f4a36d}
.lake-photo>span{font-size:12px}.lake-photo>small{font-size:14px;color:#eee3c7}.corner{font-size:10px}
.about-copy p{font-size:18px;line-height:1.7}
.portrait-photo .portrait-bottom{font-family:var(--display);font-size:26px}.portrait-photo .portrait-bottom span{font-family:var(--body);font-size:12px}
.signature{font-family:var(--display);font-style:normal;font-size:36px;color:var(--pine)}
.signature small{font-family:var(--body);font-size:11px;color:var(--muted)}
.about-interests span{font-size:13px;padding:9px 14px;background:#f3d9c4;color:#285038;border-color:#c9ad76}
.about-more{background:#fffaf2;border-color:#c8ad96;border-radius:23px;box-shadow:0 4px 0 #e2ceba}
.about-more>summary{font-size:17px;padding:21px 23px;color:var(--pine)}
.about-more[open]>summary{border-color:#d6bca3}.about-personal,.about-full-story .about-personal{background:#f5e6d5}
.about-full-story .about-personal h3,.about-full-story .about-roots h3,.about-full-story .about-approach h3{font-size:29px}
.notes-section{background:#eed9c8}
.immersive-home .note-card{background:#fff8e6;border:1px solid #c2a18a;border-radius:24px 30px 24px 30px;box-shadow:0 6px 0 #bc987b33;padding:30px}
.note-card h3{font-size:32px}.note-card p{font-size:17px}.note-card .category{font-size:12px;color:#a24b16;font-weight:600}
.soon{font-size:13px;background:#f4e3d2;color:#655333;border-color:#c7ab91;padding:6px 12px}
.faq-intro p{font-size:18px;max-width:350px}
.immersive-home .faq-grid details{background:#fffaf2;border-color:#c9b097;box-shadow:0 3px 0 #e5d3bf}
.immersive-home .faq-grid summary{font-size:18px;line-height:1.4;font-weight:500;padding:24px}
summary:after{color:var(--pine);font-size:25px}
.immersive-home .faq-grid details p{font-size:17px;line-height:1.7}
.immersive-home .contact-section{background:#0d3b29;border-radius:50px 50px 0 0}
.contact-copy h2{max-width:460px}.contact-copy p{font-size:18px;max-width:430px;color:#f7ebd0}
.contact-links{gap:18px;font-size:22px}.contact-links span{font-size:12px;color:#f4a36d}
.contact-links a{width:fit-content;padding:10px 0;flex-wrap:wrap}
.immersive-home .form{background:#fff7eb;border:2px solid #c7794b;box-shadow:0 8px 0 #05291b33;border-radius:30px;padding:34px}
.form h3{font-size:33px}.form-label{font-size:14px;font-weight:600;margin-bottom:8px;color:#23452d}
.immersive-home .choice{font-size:15px;min-height:46px;padding:10px 16px;background:#fffaf2;color:#254c34;border-color:#c5aa92;border-radius:16px;box-shadow:0 3px 0 #ddc9b3}
.immersive-home .choice[aria-pressed=true]{background:var(--pine);color:#fff7eb;border-color:#082e1d;box-shadow:0 3px 0 #052719}
.immersive-home input,.immersive-home textarea,.immersive-home select{font-size:17px;padding:13px 15px;background:#fffdf5;border:1px solid #c9b097;color:#163728;min-height:50px;border-radius:15px}
input::placeholder,textarea::placeholder{color:#707058;opacity:1}
.immersive-home input:focus,.immersive-home textarea:focus{border-color:var(--lake);box-shadow:0 0 0 3px #b34c1626}
textarea{min-height:130px}.form .btn{min-height:58px;margin-top:5px}.form-note{font-size:12px;line-height:1.6;margin-top:18px}.form-status{font-size:15px;color:#16412b}
.footer-top p{font-size:15px}.footer-bottom{font-size:12px;color:#65674f}.footer-top .brand{color:var(--pine)}
.preview-badge{background:#fff8e7ed;border-color:#ccb196;box-shadow:0 2px 8px #21462a15}.preview-badge span{color:#676348}
@media(max-width:1150px){.immersive-home .nav-links{gap:14px;font-size:14px}.nav .brand b{font-size:19px}.nav .btn{font-size:15px;padding:11px 17px}.service-visual-panel .service-copy{padding:28px}.walkthrough-heading{flex-direction:column;align-items:flex-start;gap:8px}.walkthrough-heading>span{font-size:24px}.walkthrough-tip h4{font-size:26px}.tab:first-child,.immersive-home .tab{font-size:16px;padding:15px 17px}}
@media(max-width:980px){.immersive-home>header .nav-links{background:#0a3322;font-size:18px;gap:12px}.nav-links a:not(.btn){padding:9px 0}.service-visual-panel{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}.walkthrough{padding:16px;margin-right:16px}.scrapbook-intro p{font-size:17px}.scrapbook-caption{font-size:17px}.field-row{grid-template-columns:1fr}.seasonal-hero .actions{gap:16px}}
@media(max-width:760px){
 :root{--scene-height:max(860px,100svh)}
 html{scroll-padding-top:94px}.wrap{padding-left:22px;padding-right:22px}.nav .brand b{font-size:19px}.brand small{font-size:8px}.nav .brand-mark.mnre-mark{width:45px;height:45px}.nav .brand{gap:11px}
 .menu{font-size:28px;min-width:46px;min-height:46px}.immersive-home>header .nav-links{top:var(--nav-height);background:#0a3322}.immersive-home .nav-links{font-size:18px}
 h2{font-size:42px;letter-spacing:-1px}.section{padding-top:65px;padding-bottom:65px}.section-head p{font-size:17px;margin-top:20px}.eyebrow{font-size:11px}
 .seasonal-hero .hero-inner{padding-top:110px;padding-bottom:235px}.seasonal-hero .hero-copy{max-width:570px}.seasonal-hero .eyebrow{font-size:10px;letter-spacing:.8px;line-height:1.5;margin-bottom:22px}.season-kicker{font-size:11px;letter-spacing:1px}.season-copy h2{font-size:clamp(39px,9vw,58px);letter-spacing:-1px}.seasonal-hero .season-copy p{font-size:17px;line-height:1.5;margin:20px 0 24px;max-width:420px}.seasonal-hero .hero-note{font-size:12px;line-height:1.5;max-width:350px}.seasonal-hero .actions{gap:14px}.seasonal-hero .actions .btn,.seasonal-hero .actions .link{font-size:15px;min-height:52px;padding:13px 17px;gap:14px}.season-nav{gap:7px}.immersive-home .season-nav button{font-size:14px;padding:9px 10px 16px}.season-scroll-hint{gap:12px;font-size:8px}.seasonal-hero p.season-disclosure{font-size:9px;max-width:none;margin-top:14px}
 .scrapbook-intro h2{font-size:46px}.scrapbook-section{padding-top:55px}.scrapbook-byline em{font-size:30px}.scrapbook-intro .link{font-size:15px;gap:12px;padding:13px 15px}.scrapbook-caption{font-size:16px;min-height:70px}.scrapbook-card{padding:9px 9px 0}.scrapbook-caption small{font-size:11px}.scrapbook-handwritten{font-size:21px}
 .strip{gap:12px;font-size:13px}.strip strong{font-size:13px}.strip-label{font-size:10px;line-height:1.5}
 .tabs{display:grid;grid-template-columns:1fr 1fr;gap:12px;white-space:normal;padding:0 0 6px}.immersive-home .tab,.tab:first-child{padding:15px 12px;min-height:76px;font-size:16px;border-radius:17px;text-align:left}.service-visual-panel{grid-template-columns:minmax(0,1fr)}.service-visual-panel .service-copy{padding:28px 25px}.service-visual-panel .service-copy h3{font-size:34px}.service-visual-panel .service-copy>p{font-size:17px}.service-visual-panel .service-step strong{font-size:16px}.service-visual-panel .service-list{margin-bottom:25px}
 .walkthrough{margin:0 14px 20px;padding:15px;border-radius:22px}.walkthrough-heading>span{font-size:25px}.walkthrough-heading small{font-size:10px}.walkthrough-marker{width:46px;height:46px;min-width:46px;font-size:17px}.walkthrough-caption{font-size:13px;left:7px;right:7px;bottom:8px}.walkthrough-tip h4{font-size:27px}.walkthrough-tip p{font-size:16px;min-height:0}.walkthrough-kicker{font-size:10px}.walkthrough-disclosure{font-size:9px}.walkthrough-next{font-size:15px}
 .lake-section p,.about-copy p{font-size:17px}.lake-photo>small{font-size:12px}.corner{font-size:8px}.about-more>summary{font-size:17px}.note-card h3{font-size:30px}.contact-grid{gap:35px}.contact-links{font-size:21px}.immersive-home .form{padding:25px 22px}.form h3{font-size:29px}.field-row{grid-template-columns:1fr}.form-note{font-size:12px}.footer-top p{font-size:15px}.footer-bottom{font-size:11px;gap:14px}.footer .brand b{font-size:20px}
}
@media(max-width:360px){.wrap{padding-left:18px;padding-right:18px}.nav .brand b{font-size:17px}.season-copy h2{font-size:36px}.seasonal-hero .actions .btn,.seasonal-hero .actions .link{font-size:14px;padding:13px}.walkthrough-marker{width:44px;height:44px;min-width:44px}.walkthrough-caption{font-size:11px}.scrapbook-caption{font-size:14px}.contact-links{font-size:19px}}
@media(prefers-reduced-motion:reduce){.btn:hover,.immersive-home .btn:hover,.link:hover,.immersive-home .tab:hover{transform:none}}

/* Forest, orange and ivory accents from Max’s supplied artwork. */
.immersive-home .contact-section{color:#fff7eb}
.contact-section .eyebrow{color:#f4a36d}
.contact-section .form{color:#163728}
.contact-section .form h3{color:#123e2a}
.contact-section .contact-links a{color:#fff7eb}
.contact-section .contact-links a:hover{color:#f4a36d}
.scrapbook-intro h2 em{color:#a54c16}
.eyebrow,.note-card .category{color:#9b4717}
.lake-section .eyebrow,.seasonal-hero .eyebrow{color:#f4a36d}
::selection{background:#f4a36d;color:#082c1d}

/* Burnt orange is the primary action color; green anchors the page. */
:root{--orange:#ba4819;--orange-dark:#7c3015;--orange-light:#f4a36d}
.btn,.immersive-home .btn,.immersive-home>header .btn,.seasonal-hero .btn{background:var(--orange);border-color:#a13d16;color:#fffaf2;box-shadow:0 5px 0 var(--orange-dark)}
.btn:hover,.immersive-home .btn:hover,.immersive-home>header .btn:hover,.seasonal-hero .btn:hover{background:#a23b14;border-color:#8e3313;color:#fffaf2;box-shadow:0 7px 0 #702a12}
.btn:active,.immersive-home .btn:active{box-shadow:0 2px 0 var(--orange-dark)}
.immersive-home .tab[aria-selected=true],.immersive-home .choice[aria-pressed=true]{background:var(--orange);border-color:#a13d16;color:#fffaf2;box-shadow:0 4px 0 var(--orange-dark)}
.walkthrough-marker[aria-pressed=true]{background:var(--orange);color:#fffaf2;box-shadow:0 0 0 5px #fff7eba6,0 4px 0 #7c301566}
.walkthrough-next{background:var(--orange);border-color:#a13d16;box-shadow:0 3px 0 var(--orange-dark);color:#fffaf2}
.walkthrough-next:hover{background:#a23b14}
.link{border-color:#c67d54;color:#a13d16;box-shadow:0 3px 0 #dbad8c}
.link:hover{background:#f4d1b9;box-shadow:0 5px 0 #dbad8c}
.seasonal-hero .link{color:#fff7eb;border-color:#fff7ebaa;box-shadow:none}
.lake-section .link{color:#a13d16;border-color:#c67d54}
.immersive-home .season-nav button[aria-pressed=true]{background:var(--orange);border-color:#d57443;color:#fffaf2}
.immersive-home .season-nav button[aria-pressed=true] .season-meter:after{background:#fff7eb}
.service-visual-panel .step-num{color:#a13d16;border-color:#ca936d;background:#fff3e4}
::selection{background:#f4a36d;color:#082c1d}

/* Personal camera-roll photos keep their full framing, with a loose album feel. */
.personal-section{background:#f3e5d6;padding-top:62px;padding-bottom:86px;border-top:1px solid #ddc5af}
.personal-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:48px}
.personal-heading .eyebrow{margin-bottom:15px}
.personal-heading p{font-size:18px;line-height:1.65;max-width:340px}
.personal-photo-grid{display:grid;grid-template-columns:1fr 1.4fr .85fr;gap:35px;align-items:center;padding:12px 5px}
.personal-photo{position:relative;min-width:0;display:block;width:100%;padding:12px 12px 0;border:1px solid #cdb49c;border-radius:7px 10px 8px 6px;background:#fffaf2;color:#163728;box-shadow:0 10px 25px #49301f16;text-align:left;transform:rotate(var(--photo-angle,0deg));transition:transform .25s,box-shadow .25s}
.personal-photo:hover{transform:rotate(0deg) translateY(-4px);box-shadow:0 14px 28px #49301f25}
.personal-photo-game{--photo-angle:-3deg}.personal-photo-blind{--photo-angle:1.5deg}.personal-photo-outdoors{--photo-angle:2.5deg}
.personal-photo img{display:block;width:100%;height:auto;border-radius:3px}
.personal-photo-caption{display:flex;justify-content:space-between;gap:10px;align-items:center;font-family:var(--display);font-size:19px;line-height:1.3;min-height:68px;padding:12px 2px}
.personal-photo-caption>span{font-family:var(--body);color:#a13d16;font-size:24px}
.personal-tape{position:absolute;width:65px;height:24px;top:-13px;left:calc(50% - 32px);background:#cc795a8c;transform:rotate(-5deg);z-index:1;clip-path:polygon(0 4%,100% 0,97% 100%,3% 95%)}
.personal-photo-blind .personal-tape{background:#446e4f80;transform:rotate(8deg)}
.personal-note{display:block;margin:0 0 32px 10px;font:25px/1.3 var(--display);color:#a13d16;transform:rotate(-3deg)}
.personal-photo-hint{display:block;margin-top:28px;text-align:center;font-size:14px;color:#695c4f}
.personal-photo-middle{min-width:0}
.personal-photo-dialog{width:fit-content;max-width:calc(100vw - 28px);max-height:94svh;overflow:auto;background:#fff7eb;border:0;border-radius:22px;padding:48px 20px 20px;box-shadow:0 25px 80px #0005;color:#163728}
.personal-photo-dialog::backdrop{background:#082c1de8}
.personal-photo-large{display:block;width:auto;height:auto;max-width:100%;max-height:76svh;object-fit:contain;margin:auto;border-radius:8px}
.personal-photo-dialog h3{font-size:26px;text-align:center;margin:18px 10px 0}
.personal-photo-close{position:absolute;right:8px;top:4px;width:44px;height:44px;border:0;border-radius:50%;background:transparent;color:#a13d16;font-size:31px;line-height:1}
.personal-photo-close:hover{background:#f4d1b9}
@media(max-width:1050px){.personal-photo-grid{gap:22px;grid-template-columns:1fr 1.2fr .85fr}.personal-photo-caption{font-size:16px}.personal-photo{padding:9px 9px 0}.personal-note{font-size:22px}}
@media(max-width:760px){.personal-heading{display:block;margin-bottom:30px}.personal-heading p{font-size:17px;margin-top:22px}.personal-photo-grid{grid-template-columns:minmax(0,1fr);gap:36px;padding:10px 12px;max-width:470px;margin:auto}.personal-photo-middle{grid-row:1}.personal-note{font-size:23px;margin:4px 0 24px}.personal-photo-game{--photo-angle:-2deg}.personal-photo-outdoors{--photo-angle:2deg;max-width:320px;justify-self:center}.personal-photo-caption{font-size:20px;min-height:65px}.personal-photo-hint{margin-top:20px}.personal-section{padding-top:48px;padding-bottom:60px}.personal-photo-dialog{padding:46px 12px 18px}.personal-photo-dialog h3{font-size:23px}}
@media(prefers-reduced-motion:reduce){.personal-photo{transition:none}.personal-photo:hover{transform:rotate(var(--photo-angle,0deg))}}

/* Google profile links remain useful before automatic feeds are authorized. */
.google-review-invite{display:flex;align-items:center;justify-content:space-between;gap:30px;background:#fff7eb;border:1px solid #ddc5af;border-radius:26px;padding:30px 34px;margin:24px 0 0}
.google-review-invite h3{font-size:clamp(25px,2.5vw,34px);margin:8px 0 10px}
.google-review-invite p,.google-notes-link p{margin:0;font-size:17px;line-height:1.5}
.google-review-invite .btn{flex-shrink:0}
.google-notes-link{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:34px;padding-top:28px;border-top:1px solid #ddc5af}
.google-setup{scroll-margin-top:100px}.google-setup h2{font-size:28px}.google-setup ol{padding-left:22px}.google-setup li{margin-bottom:12px;line-height:1.5}.google-setup .connection-status{display:inline-block;background:#f4d1b9;color:#7c3015;padding:6px 12px;border-radius:20px;font-weight:600}.google-setup .btn{margin-top:12px}
@media(max-width:760px){.google-review-invite,.google-notes-link{flex-direction:column;align-items:flex-start}.google-review-invite{padding:26px 22px}.google-review-invite .btn{width:100%;text-align:center;font-size:16px}.google-notes-link .link{font-size:16px}}

/* Give the seasonal footer room above the scrapbook’s rounded overlap. */
.season-bottom{bottom:72px}
.seasonal-hero .hero-inner{padding-bottom:197px}
@media(max-width:760px){.season-bottom{bottom:56px}.seasonal-hero .hero-inner{padding-bottom:268px}}

/* Higgsfield service photos: retain full compositions and keep captions separate. */
.walkthrough-scene{aspect-ratio:1600/1195}
.walkthrough .walkthrough-caption{position:static;display:block;background:transparent;padding:0;margin:12px 0 0;text-align:center;line-height:1.4}

/* A quiet lake-life film with a visible pause control and a still-image fallback. */
.lake-film{margin:0;min-width:0}
.lake-film-frame{position:relative;overflow:hidden;border:2px solid #72926b;border-radius:34px 60px 32px 24px;background:#0a2e20;aspect-ratio:4/3}
.lake-film video{display:block;width:100%;height:100%;object-fit:cover}
.lake-video-toggle{position:absolute;bottom:18px;left:18px;display:flex;gap:14px;align-items:center;min-height:44px;padding:10px 17px;border:1px solid #f4a36d;border-radius:16px;background:#fff7ebf2;color:#163e2b;font-weight:600;font-size:14px;box-shadow:0 3px 0 #082c1d66}
.lake-video-toggle:hover{background:#fff7eb}
.lake-video-toggle:focus-visible{outline:3px solid #f4a36d;outline-offset:3px}
.lake-film figcaption{color:#fff7eb;font-size:14px;line-height:1.6;padding:15px 3px 0}
.lake-film figcaption span{display:block;color:#d6dfd3;font-size:11px;margin-top:4px}
@media(max-width:760px){.lake-film-frame{border-radius:26px 40px 25px 22px}.lake-video-toggle{bottom:12px;left:12px;font-size:13px}}
