/*
Theme Name: Anjo & Jomol Wedding Minimal
Theme URI: https://example.com/anjo-jomol-wedding
Author: ChatGPT
Description: Modern minimal single-page wedding theme for Anjo Sajan & Jomol John.
Version: 2.0.0
License: GPLv2 or later
Text Domain: anjo-jomol-wedding
*/

:root{
  --bg:#fbfaf7;
  --paper:#ffffff;
  --ink:#171717;
  --muted:#74706a;
  --line:#e8e1d7;
  --accent:#a97856;
  --accent-soft:#efe4d8;
  --radius:22px;
  --shadow:0 20px 60px rgba(20,20,20,.07);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65}
a{color:inherit;text-decoration:none} img{max-width:100%;display:block}
.site-header{position:sticky;top:0;z-index:50;background:rgba(251,250,247,.82);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
.nav{max-width:1120px;margin:auto;padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{font-family:"Playfair Display",serif;font-size:1.22rem;font-weight:700;letter-spacing:.02em}.brand .ring{display:none}
.menu{display:flex;gap:22px;font-size:.9rem;color:var(--muted)}.menu a:hover{color:var(--ink)}
main{overflow:hidden}.section{max-width:1120px;margin:auto;padding:92px 22px}.section-title{max-width:680px;margin:0 0 38px}.section-title.center{text-align:center;margin-left:auto;margin-right:auto}.icon{display:none}
h1,h2,h3{font-family:"Playfair Display",serif;font-weight:600;letter-spacing:-.035em}h1{font-size:clamp(4rem,12vw,10rem);line-height:.86;margin:18px 0;color:var(--ink)}h2{font-size:clamp(2.4rem,5vw,4.6rem);line-height:.95;margin:0 0 12px}h3{font-size:1.75rem;line-height:1.05;margin:0 0 12px}.lead,.subtitle{color:var(--muted);font-size:1.05rem}.kicker{font-size:.76rem;text-transform:uppercase;letter-spacing:.24em;color:var(--accent);font-weight:800}.amp{font-family:"Playfair Display",serif;color:var(--accent);font-style:italic}
.hero{min-height:calc(100vh - 72px);display:grid;place-items:center;padding:74px 22px 50px}.hero-card{max-width:1120px;width:100%;display:grid;grid-template-columns:1.05fr .95fr;gap:46px;align-items:center}.hero-copy{text-align:left}.subtitle{max-width:590px;margin:0 0 28px}.hero-art{position:relative}.hero-art:before{content:"";position:absolute;inset:26px -18px -18px 26px;border:1px solid var(--line);border-radius:30px;z-index:-1}.hero-art img{width:100%;border-radius:30px;background:var(--paper);box-shadow:var(--shadow);border:1px solid var(--line)}
.date-pills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:690px;margin:32px 0 0}.pill{background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:12px 16px;color:var(--ink);font-size:.94rem}.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.btn{background:var(--ink);color:#fff;border:1px solid var(--ink);border-radius:999px;padding:13px 20px;font-weight:800;font-size:.92rem}.btn.alt{background:transparent;color:var(--ink)}
.image-strip{max-width:760px;margin:0 auto;padding:0 22px;opacity:.55}.event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow)}.event-card{display:grid;gap:12px}.card-image{width:100%;height:235px;object-fit:cover;border-radius:18px;background:var(--accent-soft);border:1px solid var(--line);margin-bottom:10px}.card-icon{font-size:1.8rem}.meta{display:flex;gap:10px;color:var(--muted);margin:6px 0}.meta span:first-child{width:24px;color:var(--accent)}
.couple{display:grid;grid-template-columns:1fr 56px 1fr;align-items:stretch;gap:18px}.person{padding:34px}.avatar{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;margin-bottom:22px;background:var(--ink);color:#fff;font-family:"Playfair Display",serif;font-size:1.8rem}.heart-divider{display:grid;place-items:center;color:var(--accent);font-size:1.7rem}.detail-list{list-style:none;margin:20px 0 0;padding:0;color:var(--muted)}.detail-list li{padding:10px 0;border-top:1px solid var(--line)}.detail-list strong{color:var(--ink);font-weight:800}
.gallery-section .section-title{text-align:center;margin-left:auto;margin-right:auto}.gallery-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:18px}.gallery-grid img{width:100%;height:360px;object-fit:cover;border-radius:24px;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow)}.gallery-grid img:first-child{height:500px;grid-row:span 2}.story-feature{max-width:880px;margin:0 0 34px}.story-feature img{width:100%;border-radius:28px;border:1px solid var(--line);box-shadow:var(--shadow)}
.story-wrap{position:relative;max-width:860px}.story-wrap:before{content:"";position:absolute;left:19px;top:6px;bottom:10px;width:1px;background:var(--line)}.timeline-item{display:grid;grid-template-columns:40px 1fr;gap:22px;margin-bottom:18px}.timeline-dot{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--paper);border:1px solid var(--line);box-shadow:0 8px 24px rgba(0,0,0,.05);z-index:1}.timeline-date{font-size:.75rem;text-transform:uppercase;letter-spacing:.18em;font-weight:800;color:var(--accent);margin-bottom:4px}.timeline-item .card{box-shadow:none}.timeline-item p{margin-bottom:0;color:var(--muted)}
.quote{background:var(--ink);color:#fff;border-radius:32px;padding:60px 28px;text-align:center}.quote p{font-family:"Playfair Display",serif;font-size:clamp(2rem,5vw,4rem);line-height:1.05;letter-spacing:-.04em;max-width:850px;margin:0 auto}.quote small{display:block;margin-top:18px;color:#cfc8be;font-weight:800}.footer{text-align:center;padding:44px 22px;color:var(--muted);border-top:1px solid var(--line)}.footer .names{font-family:"Playfair Display",serif;color:var(--ink);font-size:1.6rem;margin-bottom:6px}
@media(max-width:900px){.menu{display:none}.hero{padding-top:44px}.hero-card,.event-grid,.couple,.gallery-grid{grid-template-columns:1fr}.date-pills{grid-template-columns:1fr}.hero-copy{text-align:center}.subtitle{margin-left:auto;margin-right:auto}.cta-row{justify-content:center}.heart-divider{height:38px}.gallery-grid img,.gallery-grid img:first-child{height:auto;grid-row:auto}.section{padding:70px 18px}.story-wrap:before{left:19px}h1{font-size:clamp(4rem,20vw,7rem)}}
