/* Columbus Park design system tokens. Lakeside (light) by default; Night follows the visitor's dark-mode setting. */
@font-face{font-family:'Besley';font-style:normal;font-weight:400 900;font-display:swap;src:url(assets/fonts/besley-latin-wght-normal.woff2) format('woff2')}
@font-face{font-family:'Besley';font-style:italic;font-weight:400 900;font-display:swap;src:url(assets/fonts/besley-latin-wght-italic.woff2) format('woff2')}
@font-face{font-family:'Overpass';font-style:normal;font-weight:100 900;font-display:swap;src:url(assets/fonts/overpass-latin-wght-normal.woff2) format('woff2')}
:root{
  --paper:#f3f6ee;--pale:#e2ebe3;--card:#fff;--band:#124559;--navy:#124559;--ink:#102a33;--muted:#596a6a;
  --blue:#4a6c79;--red:#9e2a2b;--red-hover:#7f2122;--red-text:#9e2a2b;--focus:#c0453f;--on-red:#fff;
  --red-press:#6a1b1c;--keel:#00000038;--on-photo-line:#ffffff75;--on-photo-line-strong:#ffffffd9;--ease-out:cubic-bezier(.2,.7,.2,1);--ease-spring:linear(0,.009,.035 2.1%,.141 4.4%,.723 12.9%,.938 16.7%,1.017 19.4%,1.067,1.099 24.3%,1.108 26%,1.103,1.093 30%,1.018 36.4%,.996 40.5%,.988 43.9%,.991 50.3%,1.001 60.6%,1);
  --line:#d8e2db;--line-strong:#9fb3ab;--header-edge:#12455914;
  --field-bg:#f8faf5;--field-border:#79958a;--field-disabled:#ecf1ea;--placeholder:#607575;
  --mark-filter:none;--shadow-float:0 12px 40px #1245590d;--shadow-menu:0 14px 20px #12455915;
  --serif:'Besley',Georgia,'Times New Roman',serif;--sans:'Overpass','Avenir Next',Avenir,'Segoe UI',sans-serif;
  color-scheme:light dark;accent-color:var(--blue)}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--paper:#01161e;--pale:#072530;--card:#0b2c38;--navy:#eff6e0;--ink:#e6eee4;--muted:#a3b6b0;
  --blue:#aec3b0;--red-text:#e48a7e;--focus:#e06a5f;
  --line:#173a46;--line-strong:#3d5f68;--header-edge:#ffffff14;
  --field-bg:#011219;--field-border:#477a8a;--field-disabled:#072530;--placeholder:#7f9a9a;
  --mark-filter:invert(1);--shadow-float:0 12px 40px #00000059;--shadow-menu:0 14px 20px #00000066;color-scheme:dark}}
:root[data-theme="dark"]{--paper:#01161e;--pale:#072530;--card:#0b2c38;--navy:#eff6e0;--ink:#e6eee4;--muted:#a3b6b0;
  --blue:#aec3b0;--red-text:#e48a7e;--focus:#e06a5f;
  --line:#173a46;--line-strong:#3d5f68;--header-edge:#ffffff14;
  --field-bg:#011219;--field-border:#477a8a;--field-disabled:#072530;--placeholder:#7f9a9a;
  --mark-filter:invert(1);--shadow-float:0 12px 40px #00000059;--shadow-menu:0 14px 20px #00000066;color-scheme:dark}
:root[data-theme="light"]{color-scheme:light}
/* Bands: red rings disappear on deep water, so focus turns white there. */
:is(.topline,.gather,.footer,.contact-band,.day-hero,.gather-intro,.questions-to-ask,.office-card,.event-intro,.event-contact,.contact-office,.hero) :focus-visible{outline-color:#fff}
/* Buttons (v3 "Trail Sign", 2026-10-09). Park-sign silhouettes in the Lake at Dusk colours.
   One surface for theme links (a.btn, button.btn) and core Button blocks (.wp-block-button.btn > a).
   The control itself is never clipped, so its focus ring stays whole; two decorative layers draw the
   shape: ::before is the cut-corner face, ::after a 1px line that follows the cuts (the edge on light
   and outline buttons, a fine inset frame on the red one). Variants only set --btn-* values and states
   change those values, so hover, press, focus, disabled and sending read the same on every button.
   An arrow glyph becomes its own compartment (44px, hairline divider) inside the one link: never a
   second click target. interactions.js tags each arrow's direction; without JS the glyph stays. */
.btn{--btn-bg:var(--card);--btn-fg:var(--navy);--btn-line:var(--line-strong);--btn-line-inset:0px;--btn-cut:6px;--btn-py:12px;--btn-px:24px}
.btn-red{--btn-bg:var(--red);--btn-fg:var(--on-red);--btn-line:#ffffff73;--btn-line-inset:4px}
.btn-light{--btn-bg:var(--card);--btn-fg:var(--navy);--btn-line:var(--line-strong)}
.btn-outline{--btn-bg:#ffffff0a;--btn-fg:#fff;--btn-line:var(--on-photo-line)}
.btn:where(a,button),.wp-block-button.btn>.wp-block-button__link{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:0;min-height:48px;max-width:100%;margin:0;padding:calc(var(--btn-py) + 1px) var(--btn-px) calc(var(--btn-py) - 1px);border:0;border-radius:0;background:transparent;color:var(--btn-fg);box-shadow:none;font:600 1rem/1.25 var(--sans);letter-spacing:0;text-decoration:none;text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;transition:color var(--duration-quick,.2s) var(--ease-out),transform .12s var(--ease-out)}
.btn:where(a,button)::before,.btn:where(a,button)::after,.wp-block-button.btn>.wp-block-button__link::before,.wp-block-button.btn>.wp-block-button__link::after{content:"";position:absolute;z-index:-1;width:auto;height:auto;pointer-events:none;transition:background-color var(--duration-quick,.2s) var(--ease-out)}
/* Face: the full shape, corners cut at 45°. */
.btn:where(a,button)::before,.wp-block-button.btn>.wp-block-button__link::before{--c:var(--btn-cut);inset:0;background:var(--btn-bg);clip-path:polygon(var(--c) 0,calc(100% - var(--c)) 0,100% var(--c),100% calc(100% - var(--c)),calc(100% - var(--c)) 100%,var(--c) 100%,0 calc(100% - var(--c)),0 var(--c))}
/* Line: a 1px ring following the same cuts. Overpass sits a little high in its line box, so labels get 1px more room above than below. Inset corners shrink by 0.586px per pixel so the diagonal stays parallel. */
.btn:where(a,button)::after,.wp-block-button.btn>.wp-block-button__link::after{--a:max(1px,calc(var(--btn-cut) - var(--btn-line-inset) * .586));--b:max(0px,calc(var(--a) - .586px));inset:var(--btn-line-inset);background:var(--btn-line);clip-path:polygon(evenodd,var(--a) 0,calc(100% - var(--a)) 0,100% var(--a),100% calc(100% - var(--a)),calc(100% - var(--a)) 100%,var(--a) 100%,0 calc(100% - var(--a)),0 var(--a),var(--a) 0,calc(1px + var(--b)) 1px,1px calc(1px + var(--b)),1px calc(100% - 1px - var(--b)),calc(1px + var(--b)) calc(100% - 1px),calc(100% - 1px - var(--b)) calc(100% - 1px),calc(100% - 1px) calc(100% - 1px - var(--b)),calc(100% - 1px) calc(1px + var(--b)),calc(100% - 1px - var(--b)) 1px,calc(1px + var(--b)) 1px)}
/* Arrow compartment: stretches the full height at the right, with a divider inset 10px top and bottom. */
.btn :is([aria-hidden="true"],.arrow):last-child{position:relative;display:grid;place-items:center;flex:0 0 44px;width:44px;align-self:stretch;margin:calc(-1px - var(--btn-py)) calc(var(--btn-px) * -1) calc(1px - var(--btn-py)) var(--btn-px);font-weight:400;line-height:1}
.btn :is([aria-hidden="true"],.arrow):last-child::before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:1px;background:currentColor;opacity:.45}
.btn [data-arrow]{font-size:0}
.btn [data-arrow]::after{content:"";position:absolute;inset:0;margin:auto;width:20px;height:20px;background:currentColor;-webkit-mask:var(--arrow) center/20px 20px no-repeat;mask:var(--arrow) center/20px 20px no-repeat;transition:transform .16s var(--ease-out)}
.btn [data-arrow="out"]{--arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17 17 7M8 7h9v9'/%3E%3C/svg%3E")}
.btn [data-arrow="on"]{--arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E")}
.btn [data-arrow="down"]{--arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 5v14M6 13l6 6 6-6'/%3E%3C/svg%3E")}
@media(hover:hover){
  .btn-red:hover{--btn-bg:var(--red-hover)}
  .btn-light:hover{--btn-bg:var(--pale);--btn-line:var(--navy)}
  .btn-outline:hover{--btn-bg:#ffffff1f;--btn-line:var(--on-photo-line-strong)}
  .btn:hover [data-arrow="out"]::after{transform:translate(2px,-2px)}
  .btn:hover [data-arrow="on"]::after{transform:translateX(3px)}
  .btn:hover [data-arrow="down"]::after{transform:translateY(2px)}
}
/* Pressed (phones included): darker face and a 1px sink, settling back with a little spring. */
.btn-red:active{--btn-bg:var(--red-press)}
.btn-light:active{--btn-bg:var(--pale);--btn-line:var(--navy)}
.btn-outline:active{--btn-bg:#ffffff2e;--btn-line:#fff}
.btn:where(a,button):active,.wp-block-button.btn>.wp-block-button__link:active{transform:translateY(1px);transition-duration:.05s}
.btn:where(a,button),.wp-block-button.btn>.wp-block-button__link{transition:color var(--duration-quick,.2s) var(--ease-out),transform .34s var(--ease-spring)}
/* Disabled: muted and flat, no frame, no movement. A disabled button still says what it would do. */
:is(button.btn:disabled,.btn[aria-disabled="true"]:not([aria-busy="true"]),.wp-block-button.btn>.wp-block-button__link[aria-disabled="true"]){--btn-bg:var(--field-disabled);--btn-fg:var(--muted);--btn-line:var(--line-strong);--btn-line-inset:0px;color:var(--muted);transform:none;cursor:not-allowed}
:is(button.btn:disabled,.btn[aria-disabled="true"]) [data-arrow]::after{transform:none}
/* Sending: set by interactions.js after a valid submit. The face stays red, the label stays put, a spinner takes the arrow's place and a second submit is refused. */
.btn[aria-busy="true"]{cursor:progress;transform:none}
.btn-red[aria-busy="true"]{--btn-bg:var(--red-hover)}
.btn .btn-progress{display:block;width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:btn-spin .8s linear infinite}
@keyframes btn-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.btn .btn-progress{animation:none;border-right-color:currentColor;opacity:.6}}
/* Header: the compact size, still a 44px target. */
.nav .btn{--btn-cut:5px;--btn-py:10px;--btn-px:18px}
.nav .btn:where(a,button),.nav .wp-block-button.btn>.wp-block-button__link{min-height:44px;font-size:.9375rem;line-height:20px}
/* Open menu (phones): Contact spans the panel, label left and arrow right. */
@media(max-width:800px){.nav .btn:where(a,button),.nav .wp-block-button.btn>.wp-block-button__link{justify-content:space-between;text-align:left}}
/* Phones: the hero's two actions stack full width, primary first: label left, arrow right. */
@media(max-width:480px){
  .hero-actions{flex-direction:column;align-items:stretch}
  .hero-actions .btn{--btn-px:20px}
  .hero-actions :is(a.btn,.wp-block-button.btn,.wp-block-button.btn>.wp-block-button__link){width:100%}
  .hero-actions :is(a.btn,.wp-block-button.btn>.wp-block-button__link){justify-content:space-between;text-align:left}
}
/* Windows High Contrast: system colours replace the drawn layers; the shape falls back to a plain border. */
@media(forced-colors:active){
  .btn:where(a,button),.wp-block-button.btn>.wp-block-button__link{border:1px solid ButtonText}
  .btn:where(a,button)::before,.btn:where(a,button)::after,.wp-block-button.btn>.wp-block-button__link::before,.wp-block-button.btn>.wp-block-button__link::after{display:none}
  .btn [data-arrow]::after{background:ButtonText}
}
/* Menu: the same cut-corner control. Open reads as pressed in (navy face) and the glyph becomes a close mark. */
.site-header .menu-toggle{--btn-cut:5px;--btn-bg:var(--card);--btn-line:var(--muted);min-height:44px;min-width:44px;padding:11px 14px;color:var(--navy);font:600 .875rem/20px var(--sans);transition:color var(--duration-quick,.2s) var(--ease-out),transform .12s var(--ease-out)}
/* Appearance selector: the same utility shape; it floats with a shadow that follows the cut corners. */
.appearance-trigger{--btn-cut:5px;--btn-bg:var(--card);--btn-line:var(--line-strong);box-shadow:none;filter:drop-shadow(0 6px 14px #12455914)}
.appearance-trigger:hover,.appearance-trigger[aria-expanded="true"]{--btn-bg:var(--paper);--btn-line:var(--ink)}
.nav .appearance-trigger{filter:none}
.site-header .menu-toggle,.appearance-trigger{position:relative;isolation:isolate;border:0;border-radius:0;background:transparent}
.site-header .menu-toggle::before,.site-header .menu-toggle::after,.appearance-trigger::before,.appearance-trigger::after{content:"";position:absolute;z-index:-1;pointer-events:none;transition:background-color var(--duration-quick,.2s) var(--ease-out)}
.site-header .menu-toggle::before,.appearance-trigger::before{--c:var(--btn-cut);inset:0;background:var(--btn-bg);clip-path:polygon(var(--c) 0,calc(100% - var(--c)) 0,100% var(--c),100% calc(100% - var(--c)),calc(100% - var(--c)) 100%,var(--c) 100%,0 calc(100% - var(--c)),0 var(--c))}
.site-header .menu-toggle::after,.appearance-trigger::after{--a:var(--btn-cut);--b:calc(var(--a) - .586px);inset:0;background:var(--btn-line);clip-path:polygon(evenodd,var(--a) 0,calc(100% - var(--a)) 0,100% var(--a),100% calc(100% - var(--a)),calc(100% - var(--a)) 100%,var(--a) 100%,0 calc(100% - var(--a)),0 var(--a),var(--a) 0,calc(1px + var(--b)) 1px,1px calc(1px + var(--b)),1px calc(100% - 1px - var(--b)),calc(1px + var(--b)) calc(100% - 1px),calc(100% - 1px - var(--b)) calc(100% - 1px),calc(100% - 1px) calc(100% - 1px - var(--b)),calc(100% - 1px) calc(1px + var(--b)),calc(100% - 1px - var(--b)) 1px,calc(1px + var(--b)) 1px)}
.menu-toggle>span{position:relative;display:inline-block;width:1em;margin-left:6px;text-align:center;line-height:20px}
@media(hover:hover){.site-header .menu-toggle:not([aria-expanded="true"]):hover{--btn-bg:var(--pale)}}
.menu-toggle:active{transform:translateY(1px)}
.site-header .menu-toggle[aria-expanded="true"]{--btn-bg:var(--navy);--btn-line:var(--navy);color:var(--paper)}
.menu-toggle[aria-expanded="true"]>span{color:transparent}
.menu-toggle[aria-expanded="true"]>span::after{content:"\00D7";position:absolute;inset:0;color:var(--paper);font-size:1.25rem;line-height:20px;text-align:center}
@media(forced-colors:active){:is(.site-header .menu-toggle,.appearance-trigger){border:1px solid ButtonText}:is(.site-header .menu-toggle,.appearance-trigger)::before,:is(.site-header .menu-toggle,.appearance-trigger)::after{display:none}}
/* Text links lean their arrow the same way. */
@media(hover:hover){.text-link:hover [data-arrow="out"]{transform:translate(2px,-2px)}.text-link:hover [data-arrow="on"]{transform:translateX(4px)}.text-link:hover [data-arrow="down"]{transform:translateY(3px)}}
.text-link [data-arrow]{display:inline-block;transition:transform .2s var(--ease-out)}
@media(prefers-reduced-motion:reduce){.btn:where(a,button),.wp-block-button.btn>.wp-block-button__link,.btn:where(a,button)::before,.btn:where(a,button)::after,.wp-block-button.btn>.wp-block-button__link::before,.wp-block-button.btn>.wp-block-button__link::after{transition:none}.btn:where(a,button):active,.wp-block-button.btn>.wp-block-button__link:active,.menu-toggle:active,.btn [data-arrow]::after,.text-link [data-arrow]{transform:none!important}}
    *{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.65 var(--sans);font-size-adjust:from-font;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:500;font-size-adjust:from-font;line-height:1.08;letter-spacing:-.0225em}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:5px}.wrap{width:min(1200px,calc(100% - 80px));margin:auto}.eyebrow{font-size:12px;letter-spacing:.2em;font-weight:700;text-transform:uppercase}.arrow{display:inline-block;margin-left:12px;font-family:var(--sans);font-weight:400}.text-link{font-size:14px;font-weight:650;display:inline-flex;align-items:center;gap:15px;border-bottom:1px solid currentColor;padding-bottom:4px}.text-link:hover{color:var(--red-text)}.skip{position:absolute;z-index:100;left:15px;top:-80px;background:var(--card);color:var(--ink);padding:12px}.skip:focus{top:15px}
    .topline{background:var(--band);color:#fff;font-size:12px;letter-spacing:.04em}.topline .wrap{display:flex;justify-content:space-between;padding:8px 0}.topline .anniversary{letter-spacing:.14em;text-transform:uppercase}.topline span+span{color:#d5e3e9}.site-header{background:var(--paper);position:sticky;top:0;z-index:20;border-bottom:1px solid var(--header-edge)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:94px}.brand{display:flex;align-items:center;gap:14px;flex-shrink:0}.brand img{width:76px;opacity:.88;filter:var(--mark-filter)}.brand-name{display:block;font:27px/1 var(--serif);letter-spacing:-.02em}.brand-detail{display:block;margin-top:7px;font-size:9px;letter-spacing:.19em;text-transform:uppercase}.nav{display:flex;align-items:center;gap:29px;font-size:14px;font-weight:550}.nav>a:not(.btn){position:relative}.nav>a:not(.btn):after{content:'';position:absolute;left:0;bottom:-7px;width:0;height:1px;background:var(--red-text);transition:width .2s}.nav>a:not(.btn):hover:after{width:100%}.menu-toggle{display:none}
    .hero{position:relative;min-height:635px;display:flex;align-items:center;isolation:isolate;background:#425d56;color:#fff}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 62%;z-index:-3}.hero:before{content:'';position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(12,30,38,.8) 0%,rgba(12,30,38,.62) 34%,rgba(12,30,38,.13) 73%),linear-gradient(0deg,rgba(12,30,38,.25),transparent 60%)}.hero-inner{position:relative;padding:64px 0 112px}.hero .eyebrow{color:#ecf0e6;display:flex;align-items:center;gap:13px}.hero .eyebrow:before{content:'';display:inline-block;width:29px;height:1px;background:#ecf0e6}.hero h1{font-size:clamp(58px,6.4vw,88px);line-height:1.02;margin:25px 0 22px;max-width:660px}.hero h1 em{font-weight:400;color:#dae9df}.hero-copy{font-size:17px;line-height:1.75;max-width:420px;color:#f0f3ef}.hero-actions{display:flex;gap:13px;margin-top:29px}.hero-note{font-size:12px;color:#e1e8e1;letter-spacing:.07em;margin-top:25px}.centennial{position:absolute;right:12px;top:58px;width:136px;height:136px;border:1px solid #ffffff9c;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(9deg);background:#1d355717;box-shadow:inset 0 0 0 7px #ffffff0c}.centennial .top{font-size:9px;letter-spacing:.2em}.centennial strong{font:57px/.95 var(--serif);letter-spacing:-.03em;margin:5px 0}.centennial .bottom{font-size:11px;letter-spacing:.14em}.photo-caption{position:absolute;right:0;bottom:36px;font-size:11px;letter-spacing:.1em;display:flex;align-items:center;gap:8px}.photo-caption:before{content:'';width:6px;height:6px;border-radius:50%;background:#fff}
    .quick-info{margin-top:-45px;position:relative;z-index:2;background:var(--card);display:grid;grid-template-columns:1fr 1fr 1fr 1.3fr;box-shadow:var(--shadow-float);border-radius:3px;padding:26px 15px}.quick-item{padding:0 28px;border-right:1px solid var(--line)}.quick-item:last-child{border:0}.quick-label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);margin-bottom:5px}.quick-value{font-family:var(--serif);font-size:26px;line-height:1.25;letter-spacing:-.02em}.quick-value small{font:13px var(--sans);letter-spacing:0;margin-left:5px}.quick-item a:hover{color:var(--red-text)}.quick-item.phone .quick-value{font-size:23px}.rate-note{font-size:11px;color:var(--muted);text-align:right;margin-top:11px}
    .explore{padding:91px 0 88px}.section-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;margin-bottom:37px}.section-intro h2{font-size:49px;max-width:610px;margin-top:15px}.section-intro>p{max-width:320px;font-size:15px;color:var(--muted);line-height:1.8;padding-bottom:4px}.section-intro .eyebrow,.heritage .eyebrow{color:var(--blue)}.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.experience{position:relative}.card-photo{display:block;overflow:hidden;border-radius:3px;height:254px;background:var(--pale);position:relative}.card-photo img{width:100%;height:100%;object-fit:cover;transition:transform .65s}.card-photo:hover img{transform:scale(1.035)}.card-index{position:absolute;bottom:16px;left:18px;background:var(--paper);color:var(--navy);padding:4px 10px;font-size:10px;letter-spacing:.14em}.experience h3{font-size:31px;margin:24px 0 12px}.experience p{font-size:15px;line-height:1.8;color:var(--muted);max-width:355px;min-height:82px}.experience .text-link{margin-top:20px}.monthly{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:49px;padding:24px 30px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.monthly-copy{display:flex;align-items:center;gap:21px}.monthly svg{width:37px;height:37px;color:var(--blue);flex-shrink:0}.monthly h3{font-size:25px;letter-spacing:-.015em}.monthly p{font-size:14px;color:var(--muted);margin-top:6px}.monthly .text-link{flex-shrink:0}
    .heritage{padding:88px 0;background:var(--pale);overflow:hidden}.heritage-grid{display:grid;grid-template-columns:1.03fr 1fr;align-items:center;gap:87px}figure.archive{position:relative;padding:0 0 24px 0}figure.archive:before{content:'';position:absolute;inset:24px -19px 0 24px;border:1px solid #6b85835c;transform:rotate(-3deg)}figure.archive img{width:100%;height:385px;object-fit:cover;position:relative;filter:sepia(.1);border:10px solid white;box-shadow:0 6px 18px #243b4820;transform:rotate(-3deg)}.archive-caption{position:relative;text-align:right;transform:rotate(-3deg);font-size:12px;color:var(--muted);margin:15px 14px 0}.heritage h2{font-size:56px;line-height:1.03;margin:18px 0 24px}.heritage p{color:var(--muted);font-size:16px;line-height:1.85}.heritage .text-link{margin-top:25px}.yearline{display:flex;align-items:center;gap:15px;font:20px var(--serif);margin-top:26px;color:var(--blue)}.yearline:after{content:'';height:1px;background:var(--line-strong);flex:1}.yearline .year-end{order:2}
    .gather{display:grid;grid-template-columns:1fr 1fr;background:var(--band);color:#fff}.gather-photo{min-height:435px;height:100%;width:100%;object-fit:cover;object-position:42% center}.gather-text{padding:67px clamp(35px,6vw,90px);align-self:center}.gather .eyebrow{color:#bfd3db}.gather h2{font-size:48px;margin:18px 0 21px;max-width:480px}.gather p{max-width:420px;color:#d8e4e8;font-size:15px;line-height:1.85}.gather .text-link{margin-top:25px}.gather .text-link:hover{color:#fff}
    .visit{padding:91px 0 95px}.visit-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line);padding-bottom:31px;margin-bottom:39px}.visit-heading .eyebrow{color:var(--blue)}.visit h2{font-size:49px;margin-top:14px}.visit-heading>p{font:italic 23px var(--serif);color:var(--blue);padding-bottom:5px}.visit-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:95px}.address{font-size:18px;line-height:1.8}.contact-phone{font-family:var(--serif);font-size:31px;display:block;margin:17px 0 5px;letter-spacing:-.015em}.contact-phone:hover{color:var(--red-text)}.contact-explain{color:var(--muted);font-size:14px;max-width:350px}.visit-actions{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0 25px}.map-button{padding:0;background:none;border:0;color:var(--blue);line-height:1.6}.faq details{border-bottom:1px solid var(--line)}.faq details:first-child{border-top:1px solid var(--line)}.faq summary{list-style:none;cursor:pointer;padding:21px 32px 21px 0;position:relative;font-size:15px;font-weight:600}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';position:absolute;right:0;top:14px;font-size:25px;font-weight:400;color:var(--blue)}.faq details[open] summary:after{content:'−'}.faq details p{font-size:14px;color:var(--muted);padding:0 25px 22px 0;line-height:1.8}.faq p a{text-decoration:underline;text-underline-offset:3px}
    .footer{background:var(--band);color:white;padding:41px 0 24px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:34px}.footer .brand img{filter:invert(1);opacity:.95}.footer .brand-name{font-size:29px}.footer .brand-detail{color:#c7d8df}.footer-motto{font:italic 24px var(--serif);color:#c7d8df}.footer-bottom{padding-top:20px;border-top:1px solid #ffffff24;display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#c7d8df;gap:20px}.footer-links{display:flex;gap:22px}.footer-links a:hover{color:white}.footer-bottom .credit{letter-spacing:.1em;text-transform:uppercase;font-size:9px}
    dialog{padding:0;border:0;border-radius:5px;width:min(850px,calc(100% - 32px));max-height:92vh;color:var(--ink);background:var(--paper);box-shadow:0 15px 80px #0007}dialog::backdrop{background:#112737c9;backdrop-filter:blur(4px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;position:sticky;top:0;background:var(--paper);border-bottom:1px solid var(--line)}.dialog-head h2{font-size:28px}.close-dialog{border:1px solid var(--line);background:var(--card);width:39px;height:39px;border-radius:50%;font-size:24px;line-height:1;color:var(--navy)}.dialog-content{padding:23px}.dialog-content p{font-size:14px;color:var(--muted);margin-bottom:20px}.dialog-content img{width:100%;height:auto}.dialog-content a{color:var(--blue);text-decoration:underline}
    @media(min-width:1600px){.hero{min-height:720px}.hero-inner{padding:90px 0 130px}.hero h1{font-size:98px}}
    @media(max-width:1050px){.wrap{width:calc(100% - 48px)}.nav{gap:19px}.brand img{width:58px}.brand-name{font-size:24px}.quick-item{padding:0 18px}.quick-item.phone .quick-value{font-size:20px}.section-intro h2{font-size:43px}.section-intro{gap:30px}.card-photo{height:220px}.experience h3{font-size:29px}.heritage-grid{gap:45px}.heritage h2{font-size:46px}.visit-grid{gap:55px}.gather-text{padding:50px 35px}.gather h2{font-size:42px}}
    @media(max-width:800px){html{scroll-padding-top:80px}.wrap{width:calc(100% - 40px)}.topline .wrap{justify-content:center}.topline .location{display:none}.header-inner{min-height:78px}.brand img{width:55px}.brand-name{font-size:24px}.brand-detail{font-size:8px}.menu-toggle{display:block}.nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);border-bottom:1px solid var(--line);padding:20px;box-shadow:var(--shadow-menu)}.nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}.nav>a:not(.btn){padding:12px!important}.nav>a:not(.btn):after{display:none}.nav .btn{margin-top:10px}.hero{min-height:610px}.hero-inner{padding:70px 0 100px}.hero h1{font-size:66px;max-width:510px}.centennial{width:96px;height:96px;right:0;top:32px}.centennial strong{font-size:40px}.centennial .top{font-size:7px}.centennial .bottom{font-size:8px}.hero .eyebrow{font-size:10px;letter-spacing:.13em}.hero-copy{font-size:16px;max-width:360px}.hero:before{background:linear-gradient(90deg,#0c1e26ce,#0c1e265c),linear-gradient(0deg,#0c1e2633,transparent)}.photo-caption{display:none}.quick-info{grid-template-columns:1fr 1fr;padding:8px 16px;margin-top:-35px}.quick-item{padding:17px 13px}.quick-item:nth-child(2){border:0}.quick-item:nth-child(-n+2){border-bottom:1px solid var(--line)}.quick-value{font-size:25px}.quick-item.phone .quick-value{font-size:23px}.rate-note{text-align:center}.explore{padding:65px 0}.section-intro{display:block;margin-bottom:30px}.section-intro>p{max-width:480px;margin-top:22px;padding:0}.section-intro h2{font-size:43px}.experience-grid{gap:18px}.card-photo{height:175px}.experience h3{font-size:25px}.experience p{font-size:14px;min-height:126px}.experience .text-link{font-size:13px;gap:5px}.monthly{padding:24px 0;gap:20px}.monthly-copy{gap:15px}.monthly h3{font-size:24px}.monthly p{font-size:13px;max-width:350px}.monthly .text-link{font-size:12px}.heritage{padding:65px 0}.heritage-grid{grid-template-columns:1fr 1fr;gap:35px}figure.archive img{height:300px}.heritage h2{font-size:40px}.heritage p{font-size:14px}.gather-photo{min-height:390px}.gather h2{font-size:37px}.gather-text{padding:35px 28px}.visit{padding:65px 0}.visit-heading>p{display:none}.visit h2{font-size:43px}.visit-grid{gap:35px;grid-template-columns:1fr 1.1fr}.contact-phone{font-size:27px}.address{font-size:16px}.footer-motto{font-size:21px}}
    @media(max-width:570px){.wrap{width:calc(100% - 36px)}.topline{font-size:10px}.brand img{width:48px}.brand-name{font-size:23px}.brand-detail{font-size:7px;letter-spacing:.15em}.brand{gap:9px}.header-inner{gap:12px;min-height:74px}.hero{min-height:585px}.hero-inner{padding:96px 0 83px}.hero h1{font-size:60px;line-height:1.02;margin:22px 0;letter-spacing:-.0275em}.hero .eyebrow{font-size:9px;letter-spacing:.1em;max-width:240px}.hero .eyebrow:before{width:17px}.centennial{top:22px;right:0;width:77px;height:77px}.centennial strong{font-size:33px;margin:2px 0}.centennial .top{font-size:6px}.centennial .bottom{font-size:7px}.hero-copy{font-size:15px;max-width:325px;line-height:1.8}.hero-actions{gap:10px;margin-top:25px;flex-wrap:wrap}.hero-note{font-size:10px;margin-top:22px}.hero-photo{object-position:54% center}.quick-info{width:calc(100% - 36px);padding:4px 10px}.quick-label{font-size:9px;letter-spacing:.1em}.quick-value{font-size:24px}.quick-value small{font-size:11px;margin-left:2px}.quick-item{padding:16px 12px}.quick-item.phone .quick-value{font-size:19px}.rate-note{font-size:10px;line-height:1.6;margin:12px 25px 0}.section-intro h2{font-size:40px}.section-intro>p{font-size:15px}.experience-grid{grid-template-columns:1fr;gap:35px}.card-photo{height:260px}.experience h3{font-size:31px;margin-top:20px}.experience p{font-size:15px;min-height:0;max-width:none}.experience .text-link{font-size:14px;margin-top:16px}.monthly{display:block;margin-top:34px}.monthly-copy{align-items:flex-start}.monthly .text-link{font-size:14px;margin:20px 0 0 52px}.monthly p{font-size:14px}.heritage-grid{grid-template-columns:1fr;gap:30px}figure.archive{margin-right:15px}figure.archive img{height:300px}.heritage h2{font-size:48px}.heritage p{font-size:16px}.gather{grid-template-columns:1fr}.gather-photo{height:285px;min-height:0}.gather-text{padding:40px 24px 48px}.gather h2{font-size:43px}.visit-heading{padding-bottom:24px;margin-bottom:30px}.visit h2{font-size:43px}.visit-grid{grid-template-columns:1fr;gap:35px}.contact-phone{font-size:33px}.address{font-size:18px}.footer-top{display:block;padding-bottom:27px}.footer-motto{margin-top:26px;font-size:24px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:16px}.footer .brand-name{font-size:27px}.footer .brand-detail{font-size:8px}.footer-links{flex-wrap:wrap;gap:17px}.dialog-head{padding:17px}.dialog-content{padding:16px}.dialog-head h2{font-size:24px}}
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Client-preview notice: compact, readable, and part of every HTML page. */
.preview-bar{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:2px 14px;background:#fff0cf;color:#513b12;border-bottom:1px solid #d4b571;padding:6px 18px;font-size:14px;line-height:1.5;text-align:center}
.preview-bar strong{font-weight:700}.preview-bar span{font-size:14px}
@media(max-width:420px){.preview-bar{flex-direction:column;gap:0}}

/* Accessibility: screen-reader-only text, and eyebrows on bands use the sage support colour. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

