/* Fern Marine NZ - Azimut-inspired Luxury Editorial • Light, warm, massive ghost typography */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@300;400;500;600&family=Inter:wght@400;500;600;700;800&display=swap');
:root{
  --cream:#F9F7F4;
  --cream2:#F3F0EB;
  --stone:#EDE9E5;
  --stone2:#E8E3DE;
  --taupe:#D8CEC2;
  --bronze:#C8A88A;
  --bronze2:#B9977A;
  --bronze-dark:#A57B5A;
  --ink:#1E2328;
  --slate:#6B6E72;
  --slate-light:#9AA0A6;
  --navy:#0A192F;
}
*{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,sans-serif; background: var(--cream); color: var(--ink); overflow-x:hidden;}
.font-display{font-family:'Cormorant Garamond',serif;}
.glass{ background: rgba(255,255,255,0.62); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); border:1px solid rgba(255,255,255,0.65); box-shadow: 0 8px 32px rgba(30,35,40,0.08), inset 0 1px 0 rgba(255,255,255,0.6);}
.glass-strong{ background: rgba(255,255,255,0.78); backdrop-filter: blur(22px); -webkit-backdrop-filter: blur(22px); border:1px solid rgba(255,255,255,0.75); }
.glass-dark{ background: rgba(30,35,40,0.72); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); border:1px solid rgba(255,255,255,0.14); }
.text-ghost{ color: transparent; -webkit-text-stroke: 1px rgba(30,35,40,0.08); }
.accent-glow{ box-shadow: 0 10px 28px rgba(200,168,138,0.35); }
.hero-organic{ border-radius: 32px 32px 32px 32px; }
@media(min-width:768px){ .hero-organic{ border-radius: 40px 40px 40px 40px; } }
.hero-notch{ position:relative; }
.hero-notch:after{ content:""; position:absolute; bottom:-1px; left:50%; transform:translateX(-50%); width: 180px; height: 28px; background: var(--cream); border-radius: 28px 28px 0 0; }
.grid-pattern{ background-image: radial-gradient(rgba(30,35,40,0.04) 1px, transparent 1px); background-size: 28px 28px; }
.reveal{ opacity:0; transform: translateY(22px); transition: all 780ms cubic-bezier(.22,1,.36,1); }
.reveal.in{ opacity:1; transform: translateY(0); }
.delay-1{ transition-delay: 90ms } .delay-2{ transition-delay: 180ms } .delay-3{ transition-delay: 270ms } .delay-4{ transition-delay: 360ms }
.card-hover{ transition: all 460ms cubic-bezier(.22,1,.36,1); }
.card-hover:hover{ transform: translateY(-6px); box-shadow: 0 20px 48px rgba(30,35,40,0.10); }
.float{ animation: floatY 4.6s ease-in-out infinite; }
.float-delayed{ animation: floatY 5.2s ease-in-out infinite 0.7s; }
@keyframes floatY{ 0%,100%{ transform: translateY(0)} 50%{ transform: translateY(-8px)}}
.bronze-btn{ background: var(--bronze); color: white; transition: all 300ms; }
.bronze-btn:hover{ background: var(--bronze2); transform: translateY(-1px); }
.ghost-text{ font-family:'Cormorant Garamond',serif; font-weight:300; letter-spacing:-0.05em; line-height:0.85; }
.asterisk{ font-size: 10px; opacity:0.5; }
.dash{ stroke-dasharray: 8 8; animation: dashMove 1.2s linear infinite; }
@keyframes dashMove{ to{ stroke-dashoffset:-16; } }
@media (prefers-reduced-motion:reduce){
  .reveal{ opacity:1; transform:none } .float,.float-delayed,.dash{ animation:none }
}
