:root{--navy:#142a43;--dark:#0d2035;--deep:#081725;--ivory:#f5f0e5;--paper:#fbf9f3;--gold:#bc941f;--goldlight:#e2bf65;--green:#24672b;--ink:#26323b;--muted:#58616a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.62 'Source Sans 3',Arial,sans-serif}a{color:inherit}button{font:inherit}.container{width:min(1160px,calc(100% - 48px));margin:auto}.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;z-index:10;padding:10px;background:white}.topline{background:var(--deep);border-bottom:1px solid #334258;color:#b8a87b;font-size:11px;font-weight:700;letter-spacing:2.1px}.top-inner{display:flex;justify-content:space-between;padding:9px 0}.site-header{background:var(--navy);position:relative;z-index:2;border-bottom:1px solid #415169}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:93px;gap:24px}.wordmark{text-decoration:none;line-height:.9;display:flex;flex-direction:column;white-space:nowrap}.wordmark-top{font-size:11px;letter-spacing:3px;color:var(--goldlight);font-weight:700}.wordmark-name{font:600 44px/.93 Teko,Impact,sans-serif;letter-spacing:2px;color:white}.site-header nav{display:flex;align-items:center;gap:25px}.site-header nav a{text-decoration:none;font-size:13px;letter-spacing:1px;text-transform:uppercase;font-weight:700;color:#f3efe6}.site-header nav a:hover,.site-header nav a[aria-current]{color:var(--goldlight)}.site-header nav a.nav-join{border:1px solid var(--gold);padding:12px 19px;color:var(--goldlight)}.menu-toggle{display:none}.hero{background:radial-gradient(ellipse at 80% 35%,#29435b 0,transparent 45%),linear-gradient(140deg,#142e49,#09192a);color:white}.hero-inner{min-height:570px;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:32px;padding:64px 0}.eyebrow,.section-label{display:flex;align-items:center;gap:14px;letter-spacing:2.6px;font-size:12px;font-weight:700;color:var(--goldlight)}.line,.small-rule{height:1px;width:34px;background:var(--gold)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;line-height:1.08;letter-spacing:-.8px}h1{font-size:clamp(48px,5.5vw,77px);margin:26px 0}h1 em,h2 em{font-weight:500;color:var(--goldlight)}.hero-copy>p{max-width:565px;color:#d3d8dd;font-size:19px}.cta-row{display:flex;align-items:center;gap:30px;margin-top:35px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:13px 24px;text-decoration:none;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:1.3px;min-height:50px}.button-gold{background:var(--gold);color:#0b1c2b}.button-gold:hover{background:var(--goldlight)}.text-link{color:#f8e7b2;font-size:14px;font-weight:700;text-decoration:none}.hero-seal{text-align:center}.hero-seal img{width:min(460px,100%);height:auto;filter:drop-shadow(0 18px 35px #0005)}.hero-seal p{font:500 21px Teko,Impact,sans-serif;letter-spacing:5px;color:var(--goldlight);margin:0}.hero-bottom{border-top:1px solid #4c5461;background:#0a1827}.hero-bottom .container{display:flex;align-items:center;gap:26px;justify-content:center;padding:14px 0;letter-spacing:3px;font-size:11px;font-weight:700;color:#c7c6bf}.hero-bottom .dot{color:var(--gold);font-size:9px}.section{padding:90px 0}.intro{background:var(--ivory)}.intro .section-label,.features .section-label,.schedule .section-label,.follow .section-label{color:#926e20}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;margin-top:19px}h2{font-size:clamp(42px,4.5vw,65px);color:var(--navy);margin-bottom:15px}h2 em{color:#987323}.intro-text{font-size:19px}.inline-link{display:inline-block;font-size:14px;font-weight:700;color:var(--green);text-decoration:none;text-transform:uppercase;letter-spacing:1px;margin-top:13px}.features{background:var(--paper)}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:34px}.feature{border-top:2px solid var(--gold);padding-top:16px}.feature-no{color:#97792f;font-size:11px;letter-spacing:2px;font-weight:700}.feature-art{height:210px;margin:14px 0 23px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,#17354c,#244a5a);color:#e7d9ad}.feature-art>span:first-child{font-size:65px;font-family:Georgia,serif;line-height:1}.feature-art>span:last-child{font:500 21px Teko,sans-serif;letter-spacing:3px}.feature-art.service{background:linear-gradient(135deg,#1b512d,#0e2b27)}.feature-art.trees{background:linear-gradient(135deg,#403a27,#7e6837)}.feature h3{font:600 31px/1.1 'Cormorant Garamond',serif;color:var(--navy);margin-bottom:10px}.feature p{color:#515962;font-size:16px}.feature a{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#1a6033;text-decoration:none}.schedule{background:var(--ivory)}.schedule-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:center}.schedule h2,.follow h2{margin-top:24px}.schedule p,.follow p{color:#5c6266}.button-outline{border:1px solid var(--navy);color:var(--navy);margin-top:14px}.calendar-frame{border:10px solid white;box-shadow:0 12px 40px #0d203512;background:white}.calendar-frame iframe{width:100%;height:430px;border:0}.follow{background:#12304a;color:white}.follow h2{color:white}.follow h2 em{color:var(--goldlight)}.follow p{color:#d5dce0}.follow-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.photo-panel{min-height:270px;border:1px solid #a38c5b;padding:35px;display:flex;align-items:center;gap:25px}.photo-symbol{font-size:80px;color:var(--goldlight)}.photo-panel strong{font:600 31px 'Cormorant Garamond',serif}.photo-panel p{font-size:15px}.final-cta{text-align:center;padding:100px 0;background:var(--ivory)}.final-cta span{font-size:12px;letter-spacing:2.5px;color:#977323;font-weight:700}.final-cta h2{margin:18px 0}.final-cta p{color:#5b6265}.final-cta .button{margin-top:14px}footer{background:var(--deep);color:#c8c9c7;padding:65px 0 0;font-size:15px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:45px;padding-bottom:45px}.footer-title{font:600 30px Teko,sans-serif;color:white;letter-spacing:1px}.footer-grid b{display:block;color:var(--goldlight);text-transform:uppercase;letter-spacing:1.5px;font-size:12px;margin-bottom:12px}.footer-grid a{display:block;text-decoration:none;margin-bottom:9px}.footer-grid a:hover{color:var(--goldlight)}.footer-bottom{border-top:1px solid #344456;padding:18px 0;display:flex;justify-content:space-between;font-size:12px}.footer-bottom span{color:#b39d62}@media(max-width:900px){.menu-toggle{display:block;color:white;background:none;border:1px solid #77808a;padding:6px 12px;font-family:Teko,sans-serif;font-size:22px;cursor:pointer}.site-header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--navy);padding:22px 24px;flex-direction:column;align-items:stretch;gap:16px}.site-header nav.open{display:flex}.hero-inner{grid-template-columns:1fr;min-height:0;padding:60px 0 40px}.hero-seal img{width:min(290px,100%)}.intro-grid,.schedule-grid,.follow-grid{grid-template-columns:1fr;gap:25px}.feature-grid{grid-template-columns:1fr 1fr}.section{padding:65px 0}}@media(max-width:590px){.container{width:min(100% - 34px,1160px)}.top-inner{justify-content:center}.top-inner span:last-child{display:none}.hero-bottom .container{gap:12px;letter-spacing:1.4px}.hero-copy>p{font-size:17px}.cta-row{flex-direction:column;align-items:flex-start;gap:18px}.feature-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:7px}.photo-panel{padding:23px;min-height:0}.hero-seal{padding-top:10px}}


/* === Shared interior-page design, building on the approved 460px-logo homepage === */
:focus-visible{outline:3px solid var(--goldlight);outline-offset:4px}
#main{display:block}
.site-header nav a[aria-current="page"]{color:var(--goldlight)}
.page-hero{background:radial-gradient(circle at 82% 48%,#2d4659 0,transparent 42%),linear-gradient(135deg,#142d47,#0a1b2e);color:#fff;padding:78px 0 82px;border-bottom:4px solid var(--gold)}
.page-hero .section-label{color:var(--goldlight)}
.page-hero h1{max-width:870px;margin:19px 0 15px;font-size:clamp(50px,6vw,83px)}
.page-hero h1 em{color:var(--goldlight)}
.page-hero p{max-width:740px;font-size:19px;color:#d7dfe4;margin:0}
.page-hero .section-label{gap:12px}
.crumbs{font-size:12px;color:#d8c18a;text-transform:uppercase;letter-spacing:1.4px;margin-top:28px}
.crumbs a{text-decoration:none}.crumbs a:hover{text-decoration:underline}
.readable{max-width:800px}
.text-large{font-size:clamp(20px,2.25vw,25px);line-height:1.55;color:#344454}
.prose p{margin:0 0 22px}.prose p:last-child{margin-bottom:0}
.prose h2{margin:40px 0 16px;font-size:clamp(36px,3.5vw,49px)}
.prose h3{font:600 31px/1.1 'Cormorant Garamond',Georgia,serif;color:var(--navy);margin:28px 0 10px}
.prose a:not(.button){color:#1c633c;text-decoration:underline;text-underline-offset:3px}
.split-story{display:grid;grid-template-columns:1.1fr .9fr;gap:85px;align-items:start}
.heritage-tile{background:var(--navy);padding:48px 42px;color:white;border-top:5px solid var(--gold);position:relative;overflow:hidden}
.heritage-tile .tile-year{font:500 122px/.9 Teko,Impact,sans-serif;letter-spacing:2px;color:var(--goldlight)}
.heritage-tile h3{font:600 37px/1.05 'Cormorant Garamond',Georgia,serif;margin:15px 0;color:white}
.heritage-tile p{color:#d1dbe3;font-size:17px;margin-bottom:0}
.heritage-tile:after{content:'✦';position:absolute;right:-18px;bottom:-90px;font:270px/1 Georgia,serif;opacity:.055}
.eyebrow-dark{display:flex;gap:12px;align-items:center;text-transform:uppercase;letter-spacing:2.5px;font-size:12px;font-weight:700;color:#946e1d;margin-bottom:22px}
.eyebrow-dark:after{content:'';height:1px;width:35px;background:var(--gold)}
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}
.info-card{background:#fff;border:1px solid #e3dccd;border-top:3px solid var(--gold);padding:33px;min-height:185px}
.info-card .index{font:500 27px Teko,sans-serif;color:#947522;letter-spacing:1px}
.info-card h3{font:600 32px/1.1 'Cormorant Garamond',Georgia,serif;color:var(--navy);margin:14px 0 10px}
.info-card p{font-size:16px;color:#54606a;margin-bottom:0}
.vessel-band{background:var(--navy);color:white;overflow:hidden}
.vessel-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.vessel-band .section-label{color:var(--goldlight)}
.vessel-band h2{color:white;margin-top:25px}.vessel-band h2 em{color:var(--goldlight)}
.vessel-band p{color:#d8e0e6}
.vessel-art{padding:42px 24px;background:linear-gradient(140deg,#0b1c2b,#1a4256);border:1px solid #5b6880;min-height:310px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:10px}
.vessel-art svg{width:min(100%,410px);height:auto}
.vessel-art small{color:#d9c17f;letter-spacing:3px;font:500 22px Teko,sans-serif}
.vessel-art .art-note{font-size:12px;color:#bfcbd2;letter-spacing:.5px;max-width:290px}
.secondary-band{background:var(--ivory)}
.section-head{display:flex;justify-content:space-between;gap:22px;align-items:end;margin-bottom:35px}
.section-head h2{margin:0}.section-head p{margin:0;max-width:475px}
.person-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.person{padding:24px 27px;background:#fff;border-left:3px solid var(--gold)}
.person small{font-size:12px;color:#8c6a21;text-transform:uppercase;letter-spacing:1.5px;font-weight:700}
.person h3{font:600 33px/1.1 'Cormorant Garamond',Georgia,serif;margin:9px 0 5px;color:var(--navy)}
.person p{margin:0;font-size:15px;color:#58646e}
.notice{background:#f5edd9;border-left:4px solid var(--gold);padding:18px 24px;font-size:16px;color:#574d3e}
.notice p{margin:0}
.calendar-intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:58px;align-items:start}
.calendar-intro h2{margin:0 0 18px}
.calendar-intro p{font-size:18px}
.calendar-big{background:white;padding:12px;border:1px solid #e3dbcc;box-shadow:0 18px 45px #15233614}
.calendar-big iframe{border:0;width:100%;min-height:650px;display:block}
.calendar-help{display:flex;flex-wrap:wrap;gap:20px;align-items:center;margin-top:18px}
.calendar-help a{color:#205f41;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.gallery-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(270px,.7fr);gap:45px;align-items:start}
.embed-card{background:white;padding:22px;border:1px solid #e2d9c6;min-width:0}
.embed-card .instagram-media{max-width:100%!important;min-width:0!important;margin:auto!important}
.gallery-note{background:var(--ivory);padding:34px 32px;border-top:4px solid var(--gold)}
.gallery-note h2{font-size:41px}
.gallery-note .button{margin-top:16px}
.gallery-fallback{font-size:15px;margin:20px 0 0;color:#667078}
.lot-kicker{font:600 26px Teko,sans-serif;letter-spacing:2px;color:var(--goldlight);margin-bottom:12px}
.lot-summary{display:grid;grid-template-columns:1.1fr .9fr;gap:32px}
.lot-opening{padding:35px 38px;background:#17402c;color:#f5f0e5;border-top:5px solid var(--gold)}
.lot-opening small{font-weight:700;color:#e2c47b;letter-spacing:2px;text-transform:uppercase;font-size:12px}
.lot-opening .date{font:600 51px/.98 'Cormorant Garamond',Georgia,serif;margin:10px 0;color:#fff}
.lot-opening p{color:#dee8dd;margin-bottom:0}
.lot-details{padding:35px 38px;background:#fff;border:1px solid #e2dac8}
.lot-details h3{font:600 31px 'Cormorant Garamond',serif;color:var(--navy);margin:0 0 10px}
.lot-details p{margin:0 0 10px}
.lot-details a{color:#1a6541;font-weight:700}
.lot-points{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}
.lot-points article{background:white;border-top:3px solid var(--gold);padding:27px}
.lot-points h3{font:600 30px 'Cormorant Garamond',serif;margin-bottom:12px;color:var(--navy)}
.lot-points p{font-size:16px;color:#56616b;margin:0}
.faq{border-top:1px solid #d0c6b2;margin-top:30px}
.faq details{border-bottom:1px solid #d0c6b2;padding:19px 0}
.faq summary{cursor:pointer;font-weight:700;color:var(--navy);font-size:19px;display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';font:500 30px Teko,Impact,sans-serif;color:#8a6b25}
.faq details[open] summary::after{content:'−'}
.faq details p{font-size:17px;color:#4c5660;max-width:900px;padding:13px 38px 3px 0;margin:0}
.lot-social{display:grid;grid-template-columns:.7fr 1.3fr;gap:30px;align-items:start}
.contact-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:65px;align-items:start}
.contact-primary{background:white;border:1px solid #e2dac8;padding:44px}
.contact-primary h2{font-size:51px}
.contact-primary p{font-size:18px;max-width:600px}
.email-feature{display:flex;flex-wrap:wrap;align-items:center;gap:15px;margin:25px 0 30px}
.email-feature a{overflow-wrap:anywhere;color:#1b6241;font-weight:700;font-size:21px}
.contact-aside{background:#142a43;color:white;padding:38px}
.contact-aside h2{font-size:44px;color:white}.contact-aside p{color:#d8e2e8}
.contact-aside .meta{font-size:12px;color:#d9be77;text-transform:uppercase;font-weight:700;letter-spacing:1.8px}
.contact-aside a{color:#e4c573;text-decoration:underline;text-underline-offset:3px}
.small-action{display:inline-block;text-decoration:underline;text-underline-offset:4px;font-size:14px;letter-spacing:.8px;font-weight:700;text-transform:uppercase}
.page-footer-cta{background:#133449;text-align:center;color:white;padding:58px 0}
.page-footer-cta h2{color:#fff;font-size:clamp(36px,4vw,54px)}
.page-footer-cta p{color:#dae0df}
.page-footer-cta .button{margin-top:10px}
@media(max-width:950px){.split-story,.vessel-grid,.calendar-intro,.gallery-grid,.lot-summary,.lot-social,.contact-grid{grid-template-columns:1fr;gap:28px}.card-grid,.lot-points{grid-template-columns:1fr 1fr}.person-grid{grid-template-columns:1fr 1fr}.page-hero{padding:55px 0}.section-head{align-items:start;flex-direction:column}}
@media(max-width:620px){.card-grid,.lot-points,.person-grid{grid-template-columns:1fr}.page-hero{padding:48px 0}.page-hero p{font-size:17px}.heritage-tile{padding:30px}.heritage-tile .tile-year{font-size:95px}.contact-primary,.contact-aside,.lot-opening,.lot-details{padding:27px 24px}.gallery-note{padding:25px}.embed-card{padding:8px}.calendar-big{padding:5px}.calendar-big iframe{min-height:520px}.section-head{gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}


/* Automatic 2026 Christmas Tree Lot status */
.lot-opening[data-season-state="open"]{background:#17402c;border-top-color:#e0bb50}
.lot-opening[data-season-state="open"] .date{color:#fff}
.lot-opening[data-season-state="closed"]{background:#142a43;border-top-color:#aa9260}
.lot-opening[data-season-state="closed"] .date{color:#fff}
.lot-phone{font-size:clamp(22px,2vw,27px);letter-spacing:.3px;white-space:nowrap}
.notice a{color:#17402c;text-decoration:underline;text-underline-offset:3px;font-weight:700}

/* Admin-managed public notices; unchanged when the backend is unavailable. */
.home-announcement[hidden]{display:none!important}
.home-announcement{padding:16px 0;background:#f2e2b5;color:#142a43;border-bottom:2px solid #bc941f}
.home-announcement .container{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.announcement-heading{font-weight:800;letter-spacing:1.5px;font-size:12px}
#home-announcement-text{font-weight:600}


/* 2026 public-facing usability update: responsive third-party embeds. */
.calendar-frame,.calendar-big,.embed-card{min-width:0}
.calendar-frame iframe{display:block;width:100%;min-width:0}
.calendar-big iframe{width:100%;min-width:0;max-width:100%;border:0}
.calendar-mobile{display:none!important}
.embed-fallback{font-size:14px;line-height:1.5;padding:12px 15px;margin:0;background:#f8f5ed;color:#505965}
.embed-fallback a{color:#175b3a;text-decoration:underline;text-underline-offset:3px;font-weight:700}
.gallery-fallback{padding:15px;background:#f8f5ed;border-left:3px solid var(--gold);margin-top:18px}
.gallery-fallback a{color:#175b3a;font-weight:700}
.tree-social-card{background:#fff;padding:34px;border:1px solid #e1d8c6;border-top:4px solid var(--gold);color:var(--ink)}
.tree-social-card .tree-social-label{font-size:12px;letter-spacing:2px;color:#765b19;font-weight:700}
.tree-social-card h3{font:600 38px/1.1 'Cormorant Garamond',Georgia,serif;color:var(--navy);margin:12px 0 12px}
.tree-social-card p{margin:0 0 18px;font-size:17px}
@media(max-width:700px){
  .calendar-desktop{display:none!important}
  .calendar-mobile{display:block!important;min-height:570px!important}
  .calendar-frame iframe{height:390px}
  .calendar-big iframe{min-height:570px}
  .gallery-grid{min-width:0}
  .gallery-grid .embed-card{min-width:0;overflow:hidden}
}
