
@import url("https://fonts.googleapis.com/css2?family=Gloock&family=Crimson+Pro:ital,wght@0,400;0,600;1,400&family=Josefin+Sans:wght@600&display=swap");

:root{
  
  --color-bg:#FBF8F2;            
  --color-surface:#ECE7DD;       
  --color-text:#10233F;          
  --color-text-muted:#4A5A70;    
  --color-accent:#C4422E;        
  --color-brass:#C9A55A;         
  --color-border:#CBD0D6;        
  --color-navy:#10233F;
  --color-on-navy:#FBF8F2;
  --color-on-navy-soft:rgba(251,248,242,.78);
  --color-on-accent:#ffffff;

  
  --font-display:"Gloock","Bodoni Moda",Didot,"Times New Roman",serif;
  --font-body:"Crimson Pro","Crimson Text",Georgia,serif;
  --font-label:"Josefin Sans","Futura","Century Gothic",sans-serif;

  --fs-hero:clamp(3.4rem,9.4vw,8.75rem);
  --fs-h1:clamp(2.6rem,6vw,5.75rem);
  --fs-h2:clamp(2.375rem,4.6vw,4.25rem);
  --fs-h3:clamp(1.5rem,2vw,1.875rem);
  --fs-lede:clamp(1.25rem,1.6vw,1.5rem);
  --fs-body:1.125rem;
  --fs-small:1rem;
  --fs-label:.8125rem;

  --lh-tight:1.02;
  --lh-snug:1.18;
  --lh-body:1.55;

  
  --s-1:.25rem; --s-2:.5rem; --s-3:.875rem; --s-4:1.25rem; --s-5:1.75rem;
  --s-6:2.5rem; --s-7:3.5rem; --s-8:5rem; --s-9:7rem; --s-10:9rem;

  --r-1:0; --r-pill:999px;
  --shadow-2:0 30px 60px -30px rgba(16,35,63,.55);

  --maxw-page:1280px;
  --maxw-prose:36rem;
  --pad:clamp(20px,4vw,56px);
  --section-pad:clamp(72px,9vw,136px);
  --rail-x:clamp(96px,9vw,136px);
  --bar-h:64px;
  --step:18px;
  --transition:.25s ease;

  
  --cn-navy-tl:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22%3E%3Cg transform=%22rotate(0 12 12)%22%3E%3Cpath d=%22M0 0h17v17H0z%22 fill=%22%2310233F%22/%3E%3Cpath d=%22M.5 24V12.5h6v-6h6V.5H24M4.5 24v-7.5h6v-6h6v-6H24%22 fill=%22none%22 stroke=%22%23C9A55A%22/%3E%3Cpath d=%22M2 2h2v2H2z%22 fill=%22%23C9A55A%22/%3E%3C/g%3E%3C/svg%3E");
  --cn-navy-tr:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22%3E%3Cg transform=%22rotate(90 12 12)%22%3E%3Cpath d=%22M0 0h17v17H0z%22 fill=%22%2310233F%22/%3E%3Cpath d=%22M.5 24V12.5h6v-6h6V.5H24M4.5 24v-7.5h6v-6h6v-6H24%22 fill=%22none%22 stroke=%22%23C9A55A%22/%3E%3Cpath d=%22M2 2h2v2H2z%22 fill=%22%23C9A55A%22/%3E%3C/g%3E%3C/svg%3E");
  --cn-navy-br:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22%3E%3Cg transform=%22rotate(180 12 12)%22%3E%3Cpath d=%22M0 0h17v17H0z%22 fill=%22%2310233F%22/%3E%3Cpath d=%22M.5 24V12.5h6v-6h6V.5H24M4.5 24v-7.5h6v-6h6v-6H24%22 fill=%22none%22 stroke=%22%23C9A55A%22/%3E%3Cpath d=%22M2 2h2v2H2z%22 fill=%22%23C9A55A%22/%3E%3C/g%3E%3C/svg%3E");
  --cn-navy-bl:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22%3E%3Cg transform=%22rotate(270 12 12)%22%3E%3Cpath d=%22M0 0h17v17H0z%22 fill=%22%2310233F%22/%3E%3Cpath d=%22M.5 24V12.5h6v-6h6V.5H24M4.5 24v-7.5h6v-6h6v-6H24%22 fill=%22none%22 stroke=%22%23C9A55A%22/%3E%3Cpath d=%22M2 2h2v2H2z%22 fill=%22%23C9A55A%22/%3E%3C/g%3E%3C/svg%3E");
  --cn-oyster-tl:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22%3E%3Cg transform=%22rotate(0 12 12)%22%3E%3Cpath d=%22M0 0h17v17H0z%22 fill=%22%23ECE7DD%22/%3E%3Cpath d=%22M.5 24V12.5h6v-6h6V.5H24M4.5 24v-7.5h6v-6h6v-6H24%22 fill=%22none%22 stroke=%22%23C9A55A%22/%3E%3Cpath d=%22M2 2h2v2H2z%22 fill=%22%23C9A55A%22/%3E%3C/g%3E%3C/svg%3E");
  --cn-oyster-tr:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22%3E%3Cg transform=%22rotate(90 12 12)%22%3E%3Cpath d=%22M0 0h17v17H0z%22 fill=%22%23ECE7DD%22/%3E%3Cpath d=%22M.5 24V12.5h6v-6h6V.5H24M4.5 24v-7.5h6v-6h6v-6H24%22 fill=%22none%22 stroke=%22%23C9A55A%22/%3E%3Cpath d=%22M2 2h2v2H2z%22 fill=%22%23C9A55A%22/%3E%3C/g%3E%3C/svg%3E");
  --cn-oyster-br:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22%3E%3Cg transform=%22rotate(180 12 12)%22%3E%3Cpath d=%22M0 0h17v17H0z%22 fill=%22%23ECE7DD%22/%3E%3Cpath d=%22M.5 24V12.5h6v-6h6V.5H24M4.5 24v-7.5h6v-6h6v-6H24%22 fill=%22none%22 stroke=%22%23C9A55A%22/%3E%3Cpath d=%22M2 2h2v2H2z%22 fill=%22%23C9A55A%22/%3E%3C/g%3E%3C/svg%3E");
  --cn-oyster-bl:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22%3E%3Cg transform=%22rotate(270 12 12)%22%3E%3Cpath d=%22M0 0h17v17H0z%22 fill=%22%23ECE7DD%22/%3E%3Cpath d=%22M.5 24V12.5h6v-6h6V.5H24M4.5 24v-7.5h6v-6h6v-6H24%22 fill=%22none%22 stroke=%22%23C9A55A%22/%3E%3Cpath d=%22M2 2h2v2H2z%22 fill=%22%23C9A55A%22/%3E%3C/g%3E%3C/svg%3E");
  --cn-linen-tl:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22%3E%3Cg transform=%22rotate(0 12 12)%22%3E%3Cpath d=%22M0 0h17v17H0z%22 fill=%22%23FBF8F2%22/%3E%3Cpath d=%22M.5 24V12.5h6v-6h6V.5H24M4.5 24v-7.5h6v-6h6v-6H24%22 fill=%22none%22 stroke=%22%23C9A55A%22/%3E%3Cpath d=%22M2 2h2v2H2z%22 fill=%22%23C9A55A%22/%3E%3C/g%3E%3C/svg%3E");
  --cn-linen-tr:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22%3E%3Cg transform=%22rotate(90 12 12)%22%3E%3Cpath d=%22M0 0h17v17H0z%22 fill=%22%23FBF8F2%22/%3E%3Cpath d=%22M.5 24V12.5h6v-6h6V.5H24M4.5 24v-7.5h6v-6h6v-6H24%22 fill=%22none%22 stroke=%22%23C9A55A%22/%3E%3Cpath d=%22M2 2h2v2H2z%22 fill=%22%23C9A55A%22/%3E%3C/g%3E%3C/svg%3E");
  --cn-linen-br:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22%3E%3Cg transform=%22rotate(180 12 12)%22%3E%3Cpath d=%22M0 0h17v17H0z%22 fill=%22%23FBF8F2%22/%3E%3Cpath d=%22M.5 24V12.5h6v-6h6V.5H24M4.5 24v-7.5h6v-6h6v-6H24%22 fill=%22none%22 stroke=%22%23C9A55A%22/%3E%3Cpath d=%22M2 2h2v2H2z%22 fill=%22%23C9A55A%22/%3E%3C/g%3E%3C/svg%3E");
  --cn-linen-bl:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2224%22 height=%2224%22%3E%3Cg transform=%22rotate(270 12 12)%22%3E%3Cpath d=%22M0 0h17v17H0z%22 fill=%22%23FBF8F2%22/%3E%3Cpath d=%22M.5 24V12.5h6v-6h6V.5H24M4.5 24v-7.5h6v-6h6v-6H24%22 fill=%22none%22 stroke=%22%23C9A55A%22/%3E%3Cpath d=%22M2 2h2v2H2z%22 fill=%22%23C9A55A%22/%3E%3C/g%3E%3C/svg%3E");
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:140px}
body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;font-feature-settings:"kern","liga","onum"}
img{display:block;max-width:100%;height:auto}
p{margin:0 0 1em}
h1,h2,h3{font-family:var(--font-display);font-weight:400;line-height:var(--lh-tight);letter-spacing:-.01em;margin:0 0 .45em;text-wrap:balance}
h1{font-size:var(--fs-h1)}
h2{font-size:var(--fs-h2)}
h3{font-size:var(--fs-h3);line-height:var(--lh-snug)}
a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.2em}
a:hover{color:var(--color-accent)}
:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}
.band-navy :focus-visible,.board :focus-visible,footer :focus-visible,nav :focus-visible{outline-color:var(--color-brass)}
::selection{background:var(--color-navy);color:var(--color-on-navy)}
ul,ol,dl,dd{margin:0;padding:0}
main{display:block}

nav[data-aicms="navbar"]{
  position:sticky;top:0;z-index:30;background:var(--color-navy);color:var(--color-on-navy);
  display:grid;grid-template-columns:1fr auto 1fr;grid-template-areas:"phone brand cta" "links links links";
  align-items:center;column-gap:var(--s-5);padding:var(--s-3) var(--pad) 0;
  border-bottom:1px solid var(--color-brass);box-shadow:0 3px 0 var(--color-navy),0 4px 0 var(--color-brass);
}
.nav-brand{grid-area:brand;font-family:var(--font-display);font-size:1.875rem;line-height:1;text-decoration:none;letter-spacing:-.01em;padding:.15em 0}
.nav-brand:hover{color:var(--color-on-navy)}
.nav-links{grid-area:links;list-style:none;display:flex;justify-content:center;gap:clamp(18px,2.6vw,40px);padding:var(--s-2) 0 var(--s-3)}
.nav-links a{font-family:var(--font-label);font-weight:600;font-size:var(--fs-label);letter-spacing:.18em;text-transform:uppercase;text-decoration:none;display:inline-flex;min-height:44px;align-items:center;border-bottom:1px solid transparent}
.nav-links a:hover,.nav-links a[aria-current]{color:var(--color-brass);border-bottom-color:var(--color-brass)}
.nav-cta{grid-area:cta;justify-self:end}
.nav-phone{grid-area:phone;justify-self:start;font-family:var(--font-label);font-weight:600;font-size:var(--fs-label);letter-spacing:.14em;text-decoration:none;color:var(--color-brass);min-height:44px;display:inline-flex;align-items:center}
.nav-phone:hover{color:var(--color-on-navy)}
[data-aicms="nav-toggle"]{color:var(--color-on-navy)}
@media (max-width:759.98px){
  nav[data-aicms="navbar"]{padding:var(--s-2) var(--pad)}
  .nav-brand{font-size:1.5rem}
  .nav-links{flex-direction:column;gap:0;padding:0}
  .nav-links a{display:flex;width:100%;font-size:.9375rem;padding:.6em 0;border-bottom:1px solid rgba(201,165,90,.35)}
  .nav-cta{justify-self:start;margin:var(--s-3) 0}
  .nav-phone{padding-bottom:var(--s-3)}
}

.label{font-family:var(--font-label);font-weight:600;font-size:var(--fs-label);letter-spacing:.18em;text-transform:uppercase;line-height:1.4;margin:0 0 var(--s-3);color:var(--color-text-muted)}
.band-navy .label,.board .label,.hero-split .label{color:var(--color-brass)}
.lede{font-size:var(--fs-lede);line-height:1.45;max-width:var(--maxw-prose)}
.muted{color:var(--color-text-muted)}
.band-navy .muted{color:var(--color-on-navy-soft)}
.small{font-size:var(--fs-small)}
.prose{max-width:var(--maxw-prose)}
.prose p:last-child{margin-bottom:0}
.space-top{margin-top:var(--s-6)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6em;min-height:48px;padding:.75em 1.6em .6em;font-family:var(--font-label);font-weight:600;font-size:var(--fs-label);letter-spacing:.18em;text-transform:uppercase;text-decoration:none;line-height:1.2;border:1px solid currentColor;background:transparent;color:inherit;cursor:pointer;transition:background-color var(--transition),color var(--transition),border-color var(--transition)}
.btn:hover{background:var(--color-navy);color:var(--color-on-navy);border-color:var(--color-navy)}
.btn-lobster{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}
.btn-lobster:hover{background:var(--color-on-navy);color:var(--color-navy);border-color:var(--color-on-navy)}
.btn-brass{color:var(--color-brass);border-color:var(--color-brass)}
.btn-brass:hover{background:var(--color-brass);color:var(--color-navy);border-color:var(--color-brass)}
.actions{display:flex;flex-wrap:wrap;gap:var(--s-3);margin-top:var(--s-5)}
.more{font-family:var(--font-label);font-weight:600;font-size:var(--fs-label);letter-spacing:.18em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid currentColor;padding:.4em 0 .2em;display:inline-flex;min-height:44px;align-items:flex-end}
.band-navy .more{color:var(--color-brass)}
.band-navy .more:hover{color:var(--color-on-navy)}

.band{padding:var(--section-pad) var(--pad);position:relative}
.band-navy{background:var(--color-navy);color:var(--color-on-navy)}
.band-oyster{background:var(--color-surface)}
.band-tight{padding-block:clamp(48px,6vw,80px)}
.wrap{max-width:var(--maxw-page);margin-inline:auto;position:relative}
.cols{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--s-6) clamp(16px,2.6vw,40px);align-items:start}
.c-5{grid-column:span 5}.c-6{grid-column:span 6}.c-7{grid-column:span 7}
.c-push{grid-column:8 / span 5}
.center{align-items:center}
@media (max-width:899.98px){.cols{grid-template-columns:1fr}.c-5,.c-6,.c-7,.c-push{grid-column:auto}}

.railed{padding-left:var(--rail-x)}
.railed::before{content:"";position:absolute;left:calc(var(--rail-x)/2 - 3px);top:80px;bottom:0;width:5px;border-left:1px solid var(--color-brass);border-right:1px solid var(--color-brass);opacity:.9}
.railed>.disc:first-child{position:absolute;left:calc(var(--rail-x)/2 - 36px);top:0}
@media (max-width:759.98px){
  .railed{padding-left:0}
  .railed::before{display:none}
  .railed>.disc:first-child{position:static;margin-bottom:var(--s-4)}
}

.disc{--d:72px;display:inline-grid;place-content:center;justify-items:center;width:var(--d);height:var(--d);border-radius:50%;flex:none;
  background:radial-gradient(circle at 34% 28%,#e3c88d 0 18%,var(--color-brass) 46%,#a98640 100%);color:var(--color-navy);
  box-shadow:inset 0 0 0 3px var(--color-brass),inset 0 0 0 4px var(--color-navy),inset 0 0 0 6px var(--color-brass),0 0 0 4px var(--color-bg);
  font-family:var(--font-display);font-size:calc(var(--d)*.36);line-height:.9;position:relative;transform-origin:50% -14px;transition:transform .6s cubic-bezier(.3,1.6,.5,1)}
.disc small{display:block;font-family:var(--font-label);font-weight:600;font-size:max(9px,calc(var(--d)*.13));letter-spacing:.14em;text-transform:uppercase;margin-bottom:2px}
.disc::before{content:"";position:absolute;top:7px;left:50%;width:6px;height:6px;margin-left:-3px;border-radius:50%;background:var(--color-navy)}
.band-navy .disc,.hero-split .disc{box-shadow:inset 0 0 0 3px var(--color-brass),inset 0 0 0 4px var(--color-navy),inset 0 0 0 6px var(--color-brass),0 0 0 4px var(--color-navy)}
.band-oyster .disc{box-shadow:inset 0 0 0 3px var(--color-brass),inset 0 0 0 4px var(--color-navy),inset 0 0 0 6px var(--color-brass),0 0 0 4px var(--color-surface)}
.disc:hover{transform:rotate(-8deg)}
.disc-sm{--d:52px}
.disc-sm::before{top:5px;width:4px;height:4px;margin-left:-2px}

.rule{display:block;height:5px;border:0;border-top:1px solid var(--color-brass);border-bottom:1px solid var(--color-brass);margin:var(--s-6) 0;transform-origin:50% 50%}
.since{display:flex;align-items:center;gap:var(--s-3);font-family:var(--font-label);font-weight:600;font-size:var(--fs-label);letter-spacing:.24em;text-transform:uppercase;color:var(--color-brass);margin:0 0 var(--s-5)}
.since::before,.since::after{content:"";flex:0 0 56px;height:5px;border-top:1px solid currentColor;border-bottom:1px solid currentColor}

.fan{--w:320px;width:var(--w);aspect-ratio:2/1;position:relative;pointer-events:none;
  background:
    radial-gradient(circle farthest-side at 50% 100%,var(--color-brass) 0 15%,transparent calc(15% + 1px) 22%,var(--color-brass) calc(22% + 0px) calc(22% + 1px),transparent calc(22% + 2px) 96%,var(--color-brass) 96% calc(96% + 1px),transparent calc(96% + 2px) calc(98.6%),var(--color-brass) 98.6% 99.2%,transparent 99.4%)}
.fan::before{content:"";position:absolute;inset:0;
  background:repeating-conic-gradient(from 270deg at 50% 100%,var(--color-brass) 0 .6deg,transparent .6deg 7.5deg);
  -webkit-mask:radial-gradient(circle farthest-side at 50% 100%,transparent 0 26%,#000 26% 92%,transparent 92%);
  mask:radial-gradient(circle farthest-side at 50% 100%,transparent 0 26%,#000 26% 92%,transparent 92%);opacity:.85}

.deco{--deco-bg:var(--color-surface);--cn-tl:var(--cn-oyster-tl);--cn-tr:var(--cn-oyster-tr);--cn-bl:var(--cn-oyster-bl);--cn-br:var(--cn-oyster-br);
  position:relative;background-color:var(--deco-bg);padding:clamp(44px,5.5vw,80px) clamp(28px,5vw,72px)}
.deco-navy{--deco-bg:var(--color-navy);--cn-tl:var(--cn-navy-tl);--cn-tr:var(--cn-navy-tr);--cn-bl:var(--cn-navy-bl);--cn-br:var(--cn-navy-br);color:var(--color-on-navy)}
.deco-linen{--deco-bg:var(--color-bg);--cn-tl:var(--cn-linen-tl);--cn-tr:var(--cn-linen-tr);--cn-bl:var(--cn-linen-bl);--cn-br:var(--cn-linen-br)}
.deco::before,.deco::after{content:"";position:absolute;inset:14px;pointer-events:none}
.deco::before{box-shadow:inset 0 0 0 1px var(--color-brass),inset 0 0 0 4px var(--deco-bg),inset 0 0 0 5px var(--color-brass);transform-origin:50% 50%}
.deco::after{background:var(--cn-tl) left top no-repeat,var(--cn-tr) right top no-repeat,var(--cn-bl) left bottom no-repeat,var(--cn-br) right bottom no-repeat}
.deco>*{position:relative;z-index:1}
@media (max-width:599.98px){
  .deco{padding:44px 26px}
  .deco::before,.deco::after{inset:9px}
  .deco::before{box-shadow:inset 0 0 0 1px var(--color-brass)}
  .deco::after{background-size:18px 18px}
}

.frame{--ratio:4/5;position:relative;margin:0;padding:5px;background:var(--color-brass);--frame-gap:var(--color-bg)}
.band-navy .frame,.hero-split .frame{--frame-gap:var(--color-navy)}
.band-oyster .frame{--frame-gap:var(--color-surface)}
.frame,.frame::before,.frame::after,.frame img{
  clip-path:polygon(0 var(--step),calc(var(--step)/2) var(--step),calc(var(--step)/2) calc(var(--step)/2),var(--step) calc(var(--step)/2),var(--step) 0,
  calc(100% - var(--step)) 0,calc(100% - var(--step)) calc(var(--step)/2),calc(100% - var(--step)/2) calc(var(--step)/2),calc(100% - var(--step)/2) var(--step),100% var(--step),
  100% calc(100% - var(--step)),calc(100% - var(--step)/2) calc(100% - var(--step)),calc(100% - var(--step)/2) calc(100% - var(--step)/2),calc(100% - var(--step)) calc(100% - var(--step)/2),calc(100% - var(--step)) 100%,
  var(--step) 100%,var(--step) calc(100% - var(--step)/2),calc(var(--step)/2) calc(100% - var(--step)/2),calc(var(--step)/2) calc(100% - var(--step)),0 calc(100% - var(--step)))}
.frame::before{content:"";position:absolute;inset:1px;background:var(--frame-gap)}
.frame::after{content:"";position:absolute;inset:4px;background:var(--color-brass)}
.frame img{position:relative;z-index:1;width:100%;aspect-ratio:var(--ratio);object-fit:cover;padding:8px;background:var(--color-bg)}
.frame-tall{--ratio:3/4}
.frame-wide{--ratio:3/2}
@media (max-width:599.98px){.frame{--step:12px}.frame img{padding:6px}}

.hero-split{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);background:var(--color-navy);color:var(--color-on-navy);position:relative;overflow:hidden}
.hero-panel{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;
  padding:clamp(56px,7vw,112px) clamp(20px,4vw,64px) clamp(44px,5vw,80px) max(var(--pad),calc((100vw - var(--maxw-page))/2))}
.hero-panel>.fan{--w:150px;margin-bottom:var(--s-5)}
.hero-panel .since{justify-content:center}
.hero-name{font-size:var(--fs-hero);line-height:.9;letter-spacing:-.02em;margin:0 0 var(--s-5)}
.hero-name span{display:block;font-size:.34em;letter-spacing:.01em;line-height:1.1;margin-bottom:.12em;color:var(--color-on-navy-soft)}
.hero-copy{text-wrap:pretty;font-size:var(--fs-lede);line-height:1.45;max-width:30rem;margin:0 auto;color:var(--color-on-navy-soft)}
.hero-panel .actions{justify-content:center}
.hero-facts{display:flex;flex-wrap:wrap;justify-content:center;margin-top:clamp(36px,5vw,64px);padding-top:var(--s-4);border-top:1px solid rgba(201,165,90,.5);gap:var(--s-2) 0}
.hero-facts p{margin:0;padding:0 clamp(14px,2vw,28px);font-size:var(--fs-small);line-height:1.35}
.hero-facts p+p{border-left:1px solid rgba(201,165,90,.5)}
.hero-facts .label{display:block;margin:0 0 .3em}
.hero-photo{position:relative;padding:clamp(28px,3.5vw,52px) max(var(--pad),calc((100vw - var(--maxw-page))/2)) clamp(28px,3.5vw,52px) 0;display:flex}
.hero-photo .frame{flex:1;display:flex}
.hero-photo .frame img{height:100%;min-height:560px;aspect-ratio:auto}
.hero-glow{position:absolute;left:0;bottom:-2px;width:58%;pointer-events:none;opacity:.16;display:flex;justify-content:center}
.hero-glow .fan{--w:min(760px,90%);background:none}
.hero-page .hero-name{font-size:var(--fs-h1)}
.hero-page .hero-photo .frame img{min-height:440px}
@media (max-width:899.98px){
  .hero-split{grid-template-columns:1fr}
  .hero-panel{padding:56px var(--pad) 40px}
  .hero-photo{padding:0 var(--pad) 40px}
  .hero-photo .frame img{min-height:0;height:auto;aspect-ratio:4/5}
  .hero-page .hero-photo .frame img{aspect-ratio:3/2;min-height:0}
  .hero-glow{display:none}
}
@media (max-width:599.98px){
  .hero-name{font-size:clamp(3.1rem,15vw,4rem)}
  .hero-page .hero-name{font-size:clamp(2.5rem,11vw,3rem)}
  .hero-facts{flex-direction:column;border-top:0;gap:0}
  .hero-facts p{padding:var(--s-3) 0;border-top:1px solid rgba(201,165,90,.4)}
  .hero-facts p+p{border-left:0}
}

.sec-head{max-width:46rem;margin-bottom:clamp(36px,4.5vw,64px)}
.sec-head h2{margin-bottom:.3em}
.sec-head-center{text-align:center;margin-inline:auto}
.sec-head-center .disc{margin-bottom:var(--s-4)}

.board{padding:clamp(52px,6vw,96px) clamp(26px,5.5vw,88px);box-shadow:var(--shadow-2);
  background-image:repeating-linear-gradient(0deg,rgba(251,248,242,.028) 0 1px,transparent 1px 38px)}
.board-head{text-align:center;margin-bottom:clamp(28px,4vw,52px)}
.board-head>.fan{--w:180px;margin:0 auto var(--s-4)}
.board-title{font-size:clamp(3rem,7vw,6rem);line-height:.95;margin:0 0 var(--s-4)}
.board-head .since{justify-content:center;margin:0}
.board-cols{display:grid;grid-template-columns:1fr 1fr;gap:0 clamp(40px,6vw,104px);position:relative}
.board-cols::before{content:"";position:absolute;top:8px;bottom:8px;left:50%;width:5px;margin-left:-2px;border-left:1px solid var(--color-brass);border-right:1px solid var(--color-brass);opacity:.55}
.board-cat{display:flex;align-items:center;gap:var(--s-3);font-size:clamp(1.75rem,2.4vw,2.25rem);margin:0 0 var(--s-2)}
.board-cat::after{content:"";flex:1;height:1px;background:var(--color-brass);opacity:.6}
.board-cat small{font-family:var(--font-label);font-weight:600;font-size:.6875rem;letter-spacing:.2em;text-transform:uppercase;color:var(--color-brass);order:2}
.catch{list-style:none}
.catch-item{padding:var(--s-4) 0;border-bottom:1px dashed rgba(201,165,90,.32)}
.catch-item:last-child{border-bottom:0}
.catch-name{display:flex;align-items:baseline;gap:.55em;margin:0 0 .3em;font-family:var(--font-display);font-size:clamp(1.375rem,1.9vw,1.6875rem);line-height:1.15}
.catch-name::after{content:"";order:1;flex:1;min-width:28px;border-bottom:2px dotted var(--color-brass);transform:translateY(-.22em)}
.catch-dish{order:0;position:relative}
.catch-price{order:2;font-family:var(--font-label);font-weight:600;font-size:.9375rem;letter-spacing:.14em;color:var(--color-brass);white-space:nowrap}
.catch-from{font-family:var(--font-label);font-weight:600;font-size:.6875rem;letter-spacing:.18em;text-transform:uppercase;color:var(--color-brass);margin:0 0 .25em}
.catch-prep{font-style:italic;color:var(--color-on-navy-soft);margin:0;font-size:1.0625rem;line-height:1.45}
.catch-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 clamp(28px,4vw,56px)}
.catch-row .catch-item{border-bottom:0}
.board-oysters{margin-top:var(--s-6);padding-top:var(--s-5);border-top:1px solid rgba(201,165,90,.45)}
.is-gone .catch-price,.is-gone .catch-prep,.is-gone .catch-from{opacity:.6}
.is-gone .catch-dish::after{content:"";position:absolute;left:-6%;right:-6%;top:48%;height:.5em;margin-top:-.25em;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 16' preserveAspectRatio='none'%3E%3Cpath d='M3 10C28 5 52 12 80 7s58 6 86 1c12-2 22-1 31-3' fill='none' stroke='%23C4422E' stroke-width='3.2' stroke-linecap='round' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") center/100% 100% no-repeat}
.gone{display:inline-block;align-self:center;order:3;background:var(--color-accent);color:var(--color-on-accent);font-family:var(--font-label);font-weight:600;font-size:.6875rem;letter-spacing:.16em;text-transform:uppercase;padding:.45em .7em .3em;transform:rotate(-4deg)}
.board-foot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--s-4);margin-top:var(--s-6);padding-top:var(--s-5);border-top:1px solid rgba(201,165,90,.45)}
.board-foot p{margin:0;font-style:italic;color:var(--color-on-navy-soft);max-width:36rem}
.board-foot .more{color:var(--color-brass)}
.board-foot .more:hover{color:var(--color-on-navy)}
@media (max-width:899.98px){
  .board-cols,.catch-row{grid-template-columns:1fr}
  .board-cols::before{display:none}
  .board-cols>div+div{margin-top:var(--s-6)}
}
@media (max-width:599.98px){
  .catch-name{flex-wrap:wrap;row-gap:.2em}
  .catch-name::after{display:none}
  .catch-price{flex-basis:100%;text-align:right}
}

.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-6) clamp(28px,4vw,64px)}
.card-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.menu-cat{break-inside:avoid}
.menu-cat-title{display:flex;align-items:center;gap:var(--s-3);font-family:var(--font-label);font-weight:600;font-size:var(--fs-label);letter-spacing:.2em;text-transform:uppercase;margin:0 0 var(--s-4);line-height:1.3}
.menu-cat-title::before,.menu-cat-title::after{content:"";flex:1;height:5px;border-top:1px solid var(--color-brass);border-bottom:1px solid var(--color-brass)}
.dish{margin:0 0 var(--s-4)}
.dish-line{display:flex;align-items:baseline;gap:.5em;margin:0;font-weight:600;font-size:1.1875rem;line-height:1.3}
.dish-line::after{content:"";order:1;flex:1;min-width:20px;border-bottom:2px dotted var(--color-brass);transform:translateY(-.2em)}
.dish-name{order:0}
.dish-price{order:2;font-family:var(--font-label);font-weight:600;font-size:.875rem;letter-spacing:.1em;white-space:nowrap}
.dish-desc{font-style:italic;color:var(--color-text-muted);margin:.1em 0 0;font-size:1.0625rem;line-height:1.45}
.dish-tags{font-family:var(--font-label);font-weight:600;font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);margin:.35em 0 0}
.card-foot{text-align:center;margin-top:var(--s-5);font-style:italic;color:var(--color-text-muted)}
@media (max-width:899.98px){.card-grid,.card-grid-2{grid-template-columns:1fr}}

.hooks{list-style:none;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));row-gap:var(--s-6)}
.hooks li{position:relative;display:flex;flex-direction:column;align-items:center;padding-top:26px;text-align:center}
.hooks li::before{content:"";position:absolute;top:0;left:0;right:0;height:5px;border-top:1px solid var(--color-brass);border-bottom:1px solid var(--color-brass)}
.hooks li::after{content:"";position:absolute;top:5px;left:50%;width:2px;height:14px;margin-left:-1px;background:var(--color-brass)}
.hook-note{font-family:var(--font-label);font-weight:600;font-size:.625rem;letter-spacing:.16em;text-transform:uppercase;color:var(--color-brass);margin:.8em 0 0;line-height:1.4;min-height:2.8em}
@media (max-width:599.98px){.hooks{grid-template-columns:repeat(4,minmax(0,1fr))}.hooks .disc{--d:58px}}

.price-big{font-family:var(--font-display);font-size:clamp(3rem,6vw,5rem);line-height:1;margin:var(--s-4) 0 var(--s-2);color:var(--color-brass)}
.price-big small{white-space:nowrap;font-family:var(--font-label);font-weight:600;font-size:.8125rem;letter-spacing:.2em;text-transform:uppercase;margin-left:.6em;vertical-align:middle;color:var(--color-on-navy)}
.ticks{list-style:none;margin:var(--s-4) 0 0;columns:2;column-gap:var(--s-6)}
.ticks li{position:relative;padding:.35em 0 .35em 1.4em;break-inside:avoid}
.ticks li::before{content:"";position:absolute;left:0;top:.95em;width:7px;height:7px;background:var(--color-brass);transform:rotate(45deg)}
@media (max-width:599.98px){.ticks{columns:1}}

.ticket{text-align:center}
.ticket .price-big{color:var(--color-accent)}
.ticket .price-big small{color:var(--color-text)}
.ticket-dish{font-family:var(--font-display);font-size:var(--fs-h3);line-height:1.2;margin:var(--s-3) 0 var(--s-2)}

.split-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(28px,4vw,56px);align-items:stretch}
@media (max-width:899.98px){.split-2{grid-template-columns:1fr}}

.quotes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-6) clamp(40px,6vw,96px);margin:0}
.quote{margin:0;padding-top:var(--s-4);border-top:5px double var(--color-brass)}
.quote p{font-style:italic;font-size:clamp(1.375rem,2vw,1.75rem);line-height:1.4;margin:0 0 var(--s-3)}
.quote cite{font-style:normal;font-family:var(--font-label);font-weight:600;font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;color:var(--color-brass)}
@media (max-width:759.98px){.quotes{grid-template-columns:1fr}}

.hours{list-style:none;margin:0 0 var(--s-4)}
.hours li{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s-4);padding:.55em 0;border-bottom:1px solid var(--color-border)}
.band-navy .hours li{border-bottom-color:rgba(201,165,90,.35)}
.hours li span:last-child{font-family:var(--font-label);font-weight:600;font-size:.875rem;letter-spacing:.1em;white-space:nowrap}
.hours li[data-aicms-today]{font-weight:600}
.hours li[data-aicms-today] span:first-child::after{margin-left:.7em;padding:.3em .55em .15em;background:var(--color-accent);color:var(--color-on-accent);font-family:var(--font-label);font-size:.625rem;letter-spacing:.16em;text-transform:uppercase;vertical-align:middle}
.facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-6) clamp(24px,3.5vw,56px)}
.facts dt{font-family:var(--font-label);font-weight:600;font-size:var(--fs-label);letter-spacing:.18em;text-transform:uppercase;margin-bottom:var(--s-3);padding-bottom:var(--s-3);border-bottom:5px double var(--color-brass)}
.band-navy .facts dt{color:var(--color-brass)}
.facts dd p{margin:0 0 .6em}
@media (max-width:899.98px){.facts{grid-template-columns:1fr}}

.table-wrap{overflow-x:auto}
.oyster-table{width:100%;border-collapse:collapse;min-width:640px}
.oyster-table caption{text-align:left;font-style:italic;color:var(--color-text-muted);padding-bottom:var(--s-3)}
.oyster-table th{font-family:var(--font-label);font-weight:600;font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;text-align:left;padding:var(--s-3) var(--s-3) var(--s-3) 0;border-bottom:5px double var(--color-brass)}
.oyster-table td{padding:var(--s-4) var(--s-3) var(--s-4) 0;border-bottom:1px solid var(--color-border);vertical-align:top}
.oyster-table td:first-child{font-family:var(--font-display);font-size:1.375rem;line-height:1.2}
.oyster-table td em{color:var(--color-text-muted)}
.oyster-table .num{text-align:right;font-family:var(--font-label);font-weight:600;font-size:.875rem;letter-spacing:.08em;white-space:nowrap}
.oyster-table th.num{text-align:right}

.timeline{list-style:none;position:relative}
.timeline::before{content:"";position:absolute;left:46px;top:20px;bottom:20px;width:5px;border-left:1px solid var(--color-brass);border-right:1px solid var(--color-brass)}
.timeline li{display:grid;grid-template-columns:96px minmax(0,1fr);gap:var(--s-5);align-items:start;padding-bottom:var(--s-7);position:relative}
.timeline li:last-child{padding-bottom:0}
.timeline h3{margin:.55em 0 .3em}
.timeline p{max-width:var(--maxw-prose);margin:0}
.disc-year{--d:96px;font-size:1.5rem}
@media (max-width:599.98px){
  .timeline::before{left:32px}
  .timeline li{grid-template-columns:68px minmax(0,1fr);gap:var(--s-4)}
  .disc-year{--d:68px;font-size:1.0625rem}
}

.steps{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s-6) clamp(20px,3vw,40px)}
.steps li .disc{margin-bottom:var(--s-4)}
.steps h3{font-size:1.5rem}
.steps p{margin:0}
@media (max-width:899.98px){.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:599.98px){.steps{grid-template-columns:1fr}}

.rooms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,40px)}
.room h3{margin-top:var(--s-4)}
.room .label{margin-top:var(--s-4)}
.room p{margin-bottom:.6em}
@media (max-width:899.98px){.rooms{grid-template-columns:1fr}}

.sets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,36px)}
.set{text-align:center}
.set h3{margin-bottom:.2em}
.set .price-big{font-size:clamp(2.5rem,4vw,3.25rem)}
.set ul{list-style:none;margin:var(--s-4) 0 0;font-style:italic;color:var(--color-on-navy-soft)}
.set li{padding:.35em 0;border-top:1px solid rgba(201,165,90,.3)}
@media (max-width:899.98px){.sets{grid-template-columns:1fr}}

.people{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-6) clamp(24px,3.5vw,56px)}
.person h3{margin:var(--s-4) 0 .15em}
.person .label{margin-bottom:var(--s-3)}
@media (max-width:899.98px){.people{grid-template-columns:1fr}}

.drinks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s-6) clamp(20px,3vw,40px)}
.drinks h3{font-size:1.5rem;padding-bottom:var(--s-3);border-bottom:5px double var(--color-brass)}
.drinks p{margin:0 0 .5em}
@media (max-width:899.98px){.drinks{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:599.98px){.drinks{grid-template-columns:1fr}}

.faq details{border-bottom:1px solid var(--color-border)}
.faq details:first-child{border-top:5px double var(--color-brass)}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:var(--s-4);min-height:56px;padding:var(--s-3) 0;font-weight:600;font-size:1.1875rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--font-display);font-size:1.75rem;line-height:1;color:var(--color-accent);transition:transform var(--transition)}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{margin:0 0 var(--s-4);max-width:var(--maxw-prose)}

[data-aicms="contact-form-section"]{scroll-margin-top:140px}
[data-aicms="contact-form"]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-4)}
[data-aicms="contact-form"] label{display:grid;gap:.35em;font-family:var(--font-label);font-weight:600;font-size:.75rem;letter-spacing:.16em;text-transform:uppercase}
[data-aicms="contact-form"] .field-wide{grid-column:1 / -1}
[data-aicms="contact-form"] input,[data-aicms="contact-form"] select,[data-aicms="contact-form"] textarea{
  width:100%;min-height:50px;padding:.65em .8em;font:inherit;font-family:var(--font-body);font-size:1.0625rem;letter-spacing:0;text-transform:none;font-weight:400;
  color:var(--color-text);background:var(--color-bg);border:1px solid var(--color-border);border-bottom:2px solid var(--color-navy);border-radius:0}
[data-aicms="contact-form"] input:focus,[data-aicms="contact-form"] select:focus,[data-aicms="contact-form"] textarea:focus{outline:2px solid var(--color-accent);outline-offset:1px}
[data-aicms="contact-form"] textarea{resize:vertical;min-height:130px}
[data-aicms="contact-form"] button{grid-column:1 / -1;justify-self:start}
@media (max-width:599.98px){[data-aicms="contact-form"]{grid-template-columns:1fr}}

footer[data-aicms="footer"]{background:var(--color-navy);color:var(--color-on-navy);padding:0 var(--pad) var(--s-6);position:relative}
.foot-crest{display:flex;align-items:flex-end;justify-content:center;gap:var(--s-4);max-width:var(--maxw-page);margin:0 auto;padding-top:var(--s-8)}
.foot-crest::before,.foot-crest::after{content:"";flex:1;height:5px;border-top:1px solid var(--color-brass);border-bottom:1px solid var(--color-brass);margin-bottom:2px}
.foot-crest .fan{--w:132px}
.foot{max-width:var(--maxw-page);margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:var(--s-6) clamp(24px,3vw,48px);padding:var(--s-7) 0 var(--s-6)}
.foot h2{font-family:var(--font-label);font-weight:600;font-size:var(--fs-label);letter-spacing:.18em;text-transform:uppercase;color:var(--color-brass);margin:0 0 var(--s-4)}
.foot p{margin:0 0 .6em;color:var(--color-on-navy-soft)}
.foot-name{font-family:var(--font-display);font-size:clamp(2rem,3vw,2.75rem);line-height:1;color:var(--color-on-navy)!important;margin-bottom:var(--s-3)!important}
.foot-list{list-style:none}
.foot-list li{margin-bottom:.15em;color:var(--color-on-navy-soft)}
.foot-list a{display:inline-flex;min-height:36px;align-items:center;text-decoration-color:var(--color-brass)}
.foot-list a:hover{color:var(--color-brass)}
.foot-legal{max-width:var(--maxw-page);margin:0 auto;padding-top:var(--s-4);border-top:1px solid rgba(201,165,90,.35);font-size:.9375rem;color:var(--color-on-navy-soft)}
.book-bar{display:none}
@media (max-width:899.98px){.foot{grid-template-columns:1fr 1fr}}
@media (max-width:759.98px){
  body{padding-bottom:var(--bar-h)}
  .foot{grid-template-columns:1fr}
  .book-bar{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:40;height:var(--bar-h);background:var(--color-navy);border-top:1px solid var(--color-brass)}
  .book-bar a{display:flex;align-items:center;justify-content:center;font-family:var(--font-label);font-weight:600;font-size:.8125rem;letter-spacing:.18em;text-transform:uppercase;text-decoration:none;color:var(--color-on-navy)}
  .book-bar a:first-child{background:var(--color-accent);color:var(--color-on-accent)}
}

@keyframes rule-draw{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes frame-draw{from{transform:scale(.96);opacity:0}to{transform:scale(1);opacity:1}}
@keyframes strike{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
@supports (animation-timeline:view()){
  @media (prefers-reduced-motion:no-preference){
    .rule,.since::before,.since::after,.menu-cat-title::before,.menu-cat-title::after,.foot-crest::before,.foot-crest::after{animation:rule-draw linear both;animation-timeline:view();animation-range:entry 0% entry 80%}
    .deco::before{animation:frame-draw linear both;animation-timeline:view();animation-range:entry 0% entry 60%}
    .is-gone .catch-dish::after{animation:strike linear both;animation-timeline:view();animation-range:entry 70% cover 40%}
  }
}
@media (prefers-reduced-motion:reduce){
  .disc{transition:none}
  .disc:hover{transform:none}
  .btn,.faq summary::after{transition:none}
}

.facts-tight{gap:var(--s-4);margin-top:var(--s-5)}
.facts-tight .price-big{font-size:clamp(2rem,3vw,2.75rem);margin:0 0 .2em}
.c-right{grid-column:7 / span 6}
.sec-head-center .actions{justify-content:center}
@media (max-width:899.98px){.c-right{grid-column:auto}}
.ticks{margin-bottom:var(--s-4)}
@media (max-width:759.98px){
  .railed>.disc:first-child{position:relative;left:auto;top:auto}
  .board-head .since{flex-direction:column;gap:var(--s-2);letter-spacing:.18em}
  .board-head .since::before,.board-head .since::after{flex-basis:auto;width:56px}
}
[data-aicms="contact-form"]{color:var(--color-text)}
.rooms .deco{padding:clamp(40px,4vw,56px) clamp(26px,3vw,40px)}
