
/* Worth Following Production Website v1.0 — shared production layer */
:root { --focus-ring: #B18A4A; }
html { scroll-padding-top: 94px; }
body { overflow-x: hidden; }
img { max-width: 100%; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid var(--focus-ring);
  outline-offset: 3px;
}
.skip-link {
  position: fixed; left: 16px; top: -80px; z-index: 9999;
  background: #102A3C; color: white; padding: 12px 16px; border-radius: 8px;
}
.skip-link:focus { top: 16px; }
.mobile-menu-button {
  display: none; min-height: 44px; min-width: 44px; padding: 8px 11px;
  border: 1px solid #D7E0E7; border-radius: 10px; background: white;
  color: #183B56; font: inherit; font-weight: 700;
}
.mobile-menu-button span { display:block; width:22px; height:2px; margin:4px 0; background:currentColor; }
.site-status {
  display:none; margin-top:14px; padding:12px 14px; border-radius:10px;
  background:#fff; border:1px solid #D7E0E7; color:#183B56;
}
.site-status.show { display:block; }
@media (max-width: 1100px) {
  header .nav { position: relative; }
  .mobile-menu-button { display: inline-block; }
  header nav[aria-label="Primary navigation"] {
    display:none !important; position:absolute; top:72px; left:0; right:0;
    padding:18px; background:white; border:1px solid #D7E0E7; border-radius:14px;
    box-shadow:0 14px 32px rgba(16,42,60,.12); flex-direction:column;
    align-items:stretch; gap:6px; z-index:100;
  }
  header nav[aria-label="Primary navigation"].open { display:flex !important; }
  header nav[aria-label="Primary navigation"] a {
    display:block; padding:10px 12px; border-radius:8px;
  }
  header nav[aria-label="Primary navigation"] a:hover { background:#F5F3EE; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto !important; }
  *, *::before, *::after { animation-duration:.01ms !important; transition-duration:.01ms !important; }
}

.signature-footer{background:#102A3C;color:#fff;padding:54px 0 48px;text-align:center;border-top:1px solid rgba(255,255,255,.12)}
.signature-footer-inner{max-width:780px}
.signature-footer-brand{font-family:Georgia,"Times New Roman",serif;font-size:30px;font-weight:700;line-height:1.2}
.signature-footer-subtitle{margin-top:8px;color:#D2B274;font-size:13px;font-style:italic;letter-spacing:.08em}
.signature-footer-idea{margin-top:28px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(22px,3vw,34px);line-height:1.3}
.signature-footer-copy{margin-top:30px;color:#D7E2E8;font-size:13px}


/* =========================================================
   Homepage v1.2 Visual Refresh
   Scoped to .homepage-v12 so the remaining pages stay v1.1
   ========================================================= */

.homepage-v12{
  background:#F7F4EE;
}

.homepage-v12 header{
  background:rgba(248,246,241,.96);
  border-bottom:1px solid rgba(24,59,86,.12);
  box-shadow:0 8px 24px rgba(16,42,60,.055);
  backdrop-filter:blur(10px);
}

.homepage-v12 header .brand{
  letter-spacing:.01em;
}

.homepage-v12 .hero{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 84% 18%, rgba(177,138,74,.11), transparent 31%),
    linear-gradient(120deg,#FBF9F5 0%,#F5F2EB 48%,#E8EFF2 100%);
  border-top:0;
  border-bottom:1px solid rgba(24,59,86,.10);
}

.homepage-v12 .hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(255,255,255,.28),transparent 42%),
    radial-gradient(circle at 14% 8%,rgba(255,255,255,.75),transparent 25%);
  pointer-events:none;
}

.homepage-v12 .hero > .container{
  position:relative;
  z-index:2;
}

.homepage-v12 .hero-horizon{
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:128px;
  opacity:.17;
  background:
    linear-gradient(155deg, transparent 0 11%, #183B56 11.3% 12.2%, transparent 12.5% 100%),
    linear-gradient(166deg, transparent 0 21%, #183B56 21.3% 22.1%, transparent 22.4% 100%),
    linear-gradient(151deg, transparent 0 34%, #183B56 34.3% 35.1%, transparent 35.4% 100%),
    linear-gradient(162deg, transparent 0 49%, #183B56 49.3% 50.2%, transparent 50.5% 100%),
    linear-gradient(154deg, transparent 0 65%, #183B56 65.3% 66.1%, transparent 66.4% 100%);
  pointer-events:none;
}

.homepage-v12 .hero h1{
  max-width:720px;
  text-wrap:balance;
}

.homepage-v12 .hero .lead{
  color:#52606B;
}

.homepage-v12 main > section:not(.hero):nth-of-type(even){
  background:#FFFFFF;
}

.homepage-v12 main > section:not(.hero):nth-of-type(odd){
  background:#F7F4EE;
}

.homepage-v12 main > section{
  border-top:1px solid rgba(24,59,86,.10);
}

.homepage-v12 .button.primary{
  box-shadow:0 8px 18px rgba(24,59,86,.14);
}

.homepage-v12 .button.secondary{
  background:rgba(255,255,255,.78);
}

.homepage-v12 h2{
  text-wrap:balance;
}

.homepage-v12 p{
  max-width:72ch;
}

.homepage-v12 .signature-footer{
  background:
    radial-gradient(circle at 50% 0%,rgba(177,138,74,.12),transparent 34%),
    #102A3C;
}

@media(max-width:980px){
  .homepage-v12 .hero-horizon{height:84px;opacity:.12}
}


/* =========================================================
   Worth Following Production Website v1.3 — Launch Candidate
   Site-wide visual refinement
   ========================================================= */

/* Retire the v1.2 experimental line graphic. */
.hero-horizon,
.homepage-v12 .hero-horizon{
  display:none !important;
}

/* Warmer, more editorial foundation across the site. */
.visual-v13{
  background:#F7F4EE;
}

.visual-v13 header{
  background:rgba(248,246,241,.97);
  border-bottom:1px solid rgba(24,59,86,.14);
  box-shadow:0 9px 26px rgba(16,42,60,.075);
  backdrop-filter:blur(10px);
}

.visual-v13 header .brand{
  letter-spacing:.01em;
}

/* Preserve each page's structure while adding restrained depth. */
.visual-v13 .hero{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 84% 18%, rgba(177,138,74,.09), transparent 31%),
    linear-gradient(120deg,#FBF9F5 0%,#F5F2EB 49%,#E9EFF2 100%);
  border-top:0;
  border-bottom:1px solid rgba(24,59,86,.11);
  padding-top:88px;
  padding-bottom:74px;
}

.visual-v13 .hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg,rgba(255,255,255,.24),transparent 44%),
    radial-gradient(circle at 14% 8%,rgba(255,255,255,.68),transparent 26%);
  pointer-events:none;
}

.visual-v13 .hero > .container,
.visual-v13 .hero > .hero-inner,
.visual-v13 .hero > .hero-grid{
  position:relative;
  z-index:1;
}

/* Alternating section rhythm without changing page architecture. */
.visual-v13 main > section:not(.hero):nth-of-type(even){
  background:#FFFFFF;
}

.visual-v13 main > section:not(.hero):nth-of-type(odd){
  background:#F7F4EE;
}

.visual-v13 main > section{
  border-top:1px solid rgba(24,59,86,.10);
}

/* Preserve intentionally dark sections. */
.visual-v13 .adaptive,
.visual-v13 .development,
.visual-v13 .closing{
  background:#102A3C !important;
}

.visual-v13 .button.primary{
  box-shadow:0 8px 18px rgba(24,59,86,.14);
}

.visual-v13 .button.secondary{
  background:rgba(255,255,255,.82);
}

.visual-v13 h1,
.visual-v13 h2{
  text-wrap:balance;
}

.visual-v13 p{
  max-width:72ch;
}

.visual-v13 .signature-footer{
  background:
    radial-gradient(circle at 50% 0%,rgba(177,138,74,.12),transparent 34%),
    #102A3C;
}

/* Slightly stronger header contrast on smaller screens too. */
@media(max-width:1100px){
  .visual-v13 header nav[aria-label="Primary navigation"]{
    background:#FBF9F5;
    box-shadow:0 16px 34px rgba(16,42,60,.14);
  }
}

@media(max-width:640px){
  .visual-v13 .hero{
    padding-top:62px;
    padding-bottom:58px;
  }
}
