:root{
  --paper:#F7F6F2;
  --paper-alt:#EDF1F0;
  --sea:#3E6367;
  --sea-deep:#2C4A4E;
  --ink:#20302F;
  --muted:#5C6B69;
  --line:#DCE3E0;
  --gold:#B08A4E;
  --card:#FFFFFF;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:'Manrope',system-ui,sans-serif;
  padding:0 24px;
  -webkit-font-smoothing:antialiased;
}
.wrap{max-width:1120px;margin:0 auto;}
img{max-width:100%;}
a{color:inherit;}
h1,h2,h3{font-family:'PT Serif',Georgia,serif;margin:0;text-wrap:balance;}
.eyebrow{
  font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:var(--sea);margin-bottom:12px;display:block;
}
.italic{font-family:'Spectral',Georgia,serif;font-style:italic;color:var(--muted);}
.mono{font-family:'PT Mono',Consolas,monospace;font-variant-numeric:tabular-nums;}

/* gold signature */
.sig{
  font-family:'Alex Brush',cursive;
  background-image:linear-gradient(100deg,#6b4e19 0%,#caa03f 26%,#fffaea 46%,#caa03f 66%,#6b4e19 100%);
  background-size:220% auto;
  -webkit-background-clip:text;background-clip:text;color:transparent;
  display:inline-block;animation:shine 7s linear infinite;
}
@keyframes shine{ to{ background-position:220% center; } }
@media (prefers-reduced-motion: reduce){ .sig{ animation:none; background-position:35% center; } }

/* photo placeholder — clearly marked, not real content */
.photo-slot{
  border:1.5px dashed var(--line);
  border-radius:14px;
  background:var(--paper-alt);
  display:flex;align-items:center;justify-content:center;text-align:center;
  color:var(--muted);font-size:13px;line-height:1.5;padding:20px;
  min-height:200px;
}
.photo-slot b{display:block;color:var(--ink);font-weight:700;margin-bottom:4px;}

/* buttons */
.btn{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--sea-deep);color:var(--paper);
  border:none;border-bottom:2px solid var(--gold);
  border-radius:4px;padding:14px 28px;
  font-family:'Manrope',sans-serif;font-weight:700;font-size:15px;
  text-decoration:none;cursor:pointer;
  transition:background .15s ease, transform .1s ease;
}
.btn:hover{background:#24393C;}
.btn:active{transform:translateY(1px);}
.btn-ghost{
  background:transparent;color:var(--ink);border:1px solid var(--line);border-bottom:1px solid var(--line);
}
.btn-ghost:hover{background:var(--paper-alt);}

/* layout helpers */
.section{padding-block:76px;}
.section-tight{padding-block:56px;}
.grid-2{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center;}
.grid-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;}
.center{text-align:center;}
.max-58{max-width:58ch;}
@media (max-width:820px){
  .grid-2{grid-template-columns:1fr;}
}

/* header */
header{
  position:sticky;top:0;z-index:20;
  background:rgba(247,246,242,.92);backdrop-filter:blur(6px);
  border-bottom:1px solid var(--line);
}
.nav-inner{
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 0;gap:20px;flex-wrap:wrap;
}
.nav-links{display:flex;gap:26px;flex-wrap:wrap;list-style:none;padding:0;margin:0;}
.nav-links a{
  text-decoration:none;font-size:14px;font-weight:600;color:var(--ink);
  border-bottom:2px solid transparent;padding-bottom:2px;
}
.nav-links a:hover{border-color:var(--gold);}
.brand-name{font-weight:700;font-size:15px;}

/* hero */
.hero{padding-block:64px 76px;}
.hero h1{font-size:clamp(30px,4.4vw,46px);line-height:1.18;max-width:16ch;}
.hero .sub{font-size:18px;line-height:1.6;max-width:46ch;margin:22px 0 30px;}
.hero-facts{display:flex;gap:22px;flex-wrap:wrap;margin-top:28px;}
.hero-facts span{font-size:12px;color:var(--muted);border-left:2px solid var(--gold);padding-left:8px;}

/* card */
.card{
  background:var(--card);border:1px solid var(--line);border-radius:16px;
  padding:28px;
}
.card h3{font-size:19px;margin-bottom:10px;}
.card p{font-size:14.5px;line-height:1.6;color:var(--muted);margin:0;}

/* flagship */
.flagship-tag{
  display:inline-block;background:var(--sea-deep);color:var(--paper);
  font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  padding:6px 12px;border-radius:100px;margin-bottom:16px;
}

/* pull quote */
.pull-quote{
  max-width:680px;margin:0 auto;padding:34px 40px;
  background:var(--paper-alt);border-left:3px solid var(--gold);border-radius:0 16px 16px 0;
}
.pull-quote h3{font-size:26px;margin-bottom:12px;}
.pull-quote p{font-family:'Spectral',Georgia,serif;font-style:italic;font-size:17px;line-height:1.65;color:#3A4A48;margin:0;}

/* faq */
details{border-bottom:1px solid var(--line);padding:18px 0;}
summary{cursor:pointer;font-weight:700;font-size:16.5px;list-style:none;}
summary::-webkit-details-marker{display:none;}
summary::before{content:"+ ";color:var(--gold);font-weight:700;}
details[open] summary::before{content:"– ";}
details p{margin:12px 0 0;line-height:1.6;color:var(--muted);font-size:15px;}

/* trust strip */
.trust{
  display:flex;align-items:center;gap:20px;flex-wrap:wrap;
  background:var(--sea-deep);color:var(--paper);
  border-radius:16px;padding:28px 32px;
}
.trust .big{font-family:'PT Serif',Georgia,serif;font-size:40px;line-height:1;}
.trust a{color:#E8D9BC;font-weight:700;text-decoration:underline;}

/* footer */
footer{border-top:1px solid var(--line);padding:36px 0 60px;}
.footer-row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:13px;color:var(--muted);}

@media (max-width:520px){
  .section{padding-block:52px;}
  .card{padding:22px;}
}

/* mobile menu */
.nav-toggle{
  display:none;background:none;border:1px solid var(--line);border-radius:10px;
  width:44px;height:44px;padding:0;cursor:pointer;color:var(--ink);
  align-items:center;justify-content:center;
}
.nav-toggle span,.nav-toggle span::before,.nav-toggle span::after{
  display:block;width:20px;height:2px;background:currentColor;border-radius:2px;
  position:relative;transition:transform .2s,background .2s;
}
.nav-toggle span::before,.nav-toggle span::after{content:"";position:absolute;left:0;}
.nav-toggle span::before{top:-6px;}
.nav-toggle span::after{top:6px;}
.nav-toggle[aria-expanded="true"] span{background:transparent;}
.nav-toggle[aria-expanded="true"] span::before{top:0;transform:rotate(45deg);}
.nav-toggle[aria-expanded="true"] span::after{top:0;transform:rotate(-45deg);}
@media (max-width:980px){
  .nav-inner{flex-wrap:wrap;gap:12px;}
  .brand-name{margin-right:auto;}
  .nav-toggle{display:inline-flex;order:3;}
  .nav-inner > .btn{order:2;}
  .nav-links{
    display:none;order:4;flex-basis:100%;flex-direction:column;gap:0;
    border-top:1px solid var(--line);margin-top:4px;
  }
  .nav-links.open{display:flex;}
  .nav-links li{border-bottom:1px solid var(--line);}
  .nav-links a{display:block;padding:15px 2px;font-size:16px;border-bottom:0;}
}
