@import url('https://fonts.googleapis.com/css2?family=Syne:wght@700;800&family=Outfit:wght@300;400;500;600&display=swap');

:root {
  /* Match mycalctools.net exactly */
  --bg:#0D0D12;
  --surface:#15151E;
  --surface2:#1C1C28;
  --surface3:#232333;
  --border:rgba(255,255,255,0.07);
  --border2:rgba(255,255,255,0.13);
  --text:#EEEAF8;
  --muted:#A0A0C0;
  --dim:#7070A0;
  --accent:#6c63ff;
  --accent2:#A78BFA;
  /* Keep calendar colour variables mapped */
  --primary:#A78BFA;
  --primary-dark:#8B5CF6;
  --primary-light:#C4B5FD;
  --dark:var(--bg);
  --dark-mid:var(--surface);
  --dark-card:var(--surface);
  --dark-card2:var(--surface2);
  --white:var(--text);
  --green:#34D399;
  --orange:#FB923C;
  --yellow:#FBBF24;
  --border-hi:rgba(255,255,255,0.13);
  --radius:14px;
  --glow:0 0 40px rgba(167,139,250,0.2);
}

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'Outfit',sans-serif;background:var(--bg);color:var(--text);min-height:100vh;-webkit-font-smoothing:antialiased;margin:0 auto;}
body::before{content:'';position:fixed;inset:0;background-image:linear-gradient(rgba(255,255,255,0.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.018) 1px,transparent 1px);background-size:52px 52px;pointer-events:none;z-index:0;}

/* HEADER */
.site-header{background:rgba(13,13,18,0.96);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100;backdrop-filter:blur(14px);}
.header-inner{max-width:1200px;margin:0 auto;padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between;height:62px;}
.logo{font-family:'Syne',sans-serif;font-size:1.2rem;font-weight:800;color:var(--text);text-decoration:none;display:flex;align-items:center;gap:.5rem;letter-spacing:-.5px;}
.logo-icon{width:32px;height:32px;background:linear-gradient(135deg,#60A5FA,#A78BFA);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0;}
.logo span{color:var(--primary-light);}
nav{display:flex;gap:.1rem;align-items:center;}
nav a{font-size:.82rem;font-weight:500;color:var(--muted);text-decoration:none;padding:.4rem .65rem;border-radius:8px;transition:all .15s;white-space:nowrap;}
nav a:hover{background:var(--surface2);color:var(--text);}
nav a.active{color:var(--primary-light);font-weight:600;}
.nav-sister{background:var(--surface2)!important;color:var(--muted)!important;border:1px solid var(--border2)!important;margin-left:.4rem;font-size:.78rem!important;}
.nav-sister:hover{border-color:var(--primary)!important;color:var(--text)!important;}

/* LAYOUT */
.container{max-width:1200px;margin:0 auto;padding:0 1.5rem;width:100%;}
.main-content{min-height:70vh;padding:.75rem 0 2rem;position:relative;z-index:1;}
.two-col{display:grid;grid-template-columns:1fr 300px;gap:2rem;align-items:start;}

/* HERO */
.hero{background:linear-gradient(135deg,var(--surface) 0%,#0d1829 100%);border:1px solid var(--border2);border-radius:20px;padding:2rem;margin-bottom:1.5rem;position:relative;overflow:hidden;}
.hero::before{content:'';position:absolute;top:-80px;right:-80px;width:320px;height:320px;background:radial-gradient(circle,rgba(167,139,250,.15) 0%,transparent 70%);pointer-events:none;}
.hero::after{content:'📅';position:absolute;right:2rem;top:50%;transform:translateY(-50%);font-size:7rem;opacity:.04;pointer-events:none;}
.hero-badge{display:inline-flex;align-items:center;gap:.5rem;background:rgba(167,139,250,.15);border:1px solid rgba(167,139,250,.3);border-radius:20px;padding:.3rem .9rem;font-size:.7rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--primary-light);margin-bottom:1.25rem;}
.hero-badge::before{content:'●';color:var(--green);font-size:.45rem;}
.hero h1{font-family:'Syne',sans-serif;font-size:clamp(2rem,5vw,3.5rem);font-weight:800;line-height:1.1;letter-spacing:-1.5px;margin-bottom:.75rem;}
.hero h1 em{font-style:italic;color:var(--primary-light);}
.date-display{font-size:clamp(1rem,2.5vw,1.35rem);font-weight:600;color:rgba(238,234,248,.85);margin-bottom:1rem;}
.date-meta-row{display:flex;gap:.6rem;flex-wrap:wrap;margin-bottom:1.5rem;}
.date-pill{background:rgba(255,255,255,.07);border:1px solid var(--border2);border-radius:20px;padding:.3rem .85rem;font-size:.78rem;color:rgba(238,234,248,.65);}
.location-pill{background:rgba(167,139,250,.15);border-color:rgba(167,139,250,.35);color:var(--primary-light);}
.copy-btn{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#60A5FA,#A78BFA);color:#fff;border:none;padding:.7rem 1.5rem;border-radius:10px;cursor:pointer;font-size:.875rem;font-weight:700;font-family:inherit;transition:all .15s;}
.copy-btn:hover{opacity:.88;transform:translateY(-1px);box-shadow:var(--glow);}
.copy-btn.copied{background:var(--green);}

/* STATS */
.stats-row{display:flex;gap:1.5rem;flex-wrap:wrap;padding:1.5rem 0;margin-bottom:2rem;border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
.stat-item{text-align:center;flex:1;min-width:70px;}
.stat-num{font-family:'Syne',sans-serif;font-size:2rem;font-weight:800;color:var(--text);line-height:1;}
.stat-lbl{font-size:.62rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-top:.2rem;}

/* SECTION TITLE */
.section-title{font-size:.68rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-bottom:1rem;display:flex;align-items:center;gap:.75rem;}
.section-title::after{content:'';flex:1;height:1px;background:var(--border);}

/* TOOL GRID */
.tool-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:.75rem;margin-bottom:2rem;}
.tool-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem .875rem;text-align:center;text-decoration:none;color:var(--text);transition:all .15s;font-size:.82rem;font-weight:500;}
.tool-card:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:0 4px 20px rgba(167,139,250,.2);color:var(--primary-light);}
.tool-card .icon{font-size:1.6rem;display:block;margin-bottom:.4rem;}
.tool-card .tag{display:inline-block;font-size:.6rem;font-weight:700;letter-spacing:.5px;color:var(--primary-light);background:rgba(167,139,250,.15);border-radius:4px;padding:.1rem .4rem;margin-top:.3rem;}

/* CALC CARD */
.calc-card{background:var(--surface);border:1px solid var(--border2);border-radius:18px;padding:2rem;margin-bottom:1.5rem;}
.calc-card h1{font-family:'Syne',sans-serif;font-size:1.75rem;font-weight:800;letter-spacing:-.5px;margin-bottom:.35rem;}
.calc-card .subtitle{color:var(--muted);font-size:.9rem;margin-bottom:1.5rem;}
.input-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem;}
.input-row.single{grid-template-columns:1fr;}
.input-row.triple{grid-template-columns:1fr 1fr 1fr;}
.input-group label{display:block;font-size:.68rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--muted);margin-bottom:.4rem;}
.input-group input,.input-group select{width:100%;padding:.75rem 1rem;border:1.5px solid var(--border2);border-radius:10px;font-family:inherit;font-size:.95rem;color:var(--text);background:var(--surface2);transition:border-color .15s;}
.input-group input:focus,.input-group select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(167,139,250,.15);}
.input-group select option{background:var(--surface2);}
.checkbox-row{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--muted);margin-bottom:1rem;cursor:pointer;}
.checkbox-row input{width:auto;cursor:pointer;accent-color:var(--primary);}
.calc-btn{width:100%;background:linear-gradient(135deg,#60A5FA,#A78BFA);color:#fff;border:none;padding:.9rem;border-radius:10px;font-family:inherit;font-size:1rem;font-weight:700;cursor:pointer;transition:all .15s;}
.calc-btn:hover{opacity:.88;box-shadow:var(--glow);}

/* RESULT */
.result-box{margin-top:1.5rem;background:rgba(167,139,250,.1);border:1.5px solid rgba(167,139,250,.3);border-radius:14px;padding:1.5rem;text-align:center;display:none;}
.result-box.show{display:block;}
.result-box.orange{background:rgba(251,146,60,.1);border-color:rgba(251,146,60,.3);}
.result-box.green{background:rgba(52,211,153,.1);border-color:rgba(52,211,153,.3);}
.result-num{font-family:'Syne',sans-serif;font-size:3.5rem;font-weight:800;color:var(--primary-light);line-height:1;}
.result-num.orange{color:var(--orange);}
.result-lbl{font-size:1rem;color:var(--muted);margin-top:.25rem;}
.result-extras{display:flex;justify-content:center;gap:1.25rem;flex-wrap:wrap;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(167,139,250,.2);font-size:.85rem;color:var(--muted);}
.result-extras.orange{border-top-color:rgba(251,146,60,.2);}
.result-copy{margin:.875rem auto 0;display:inline-flex;align-items:center;gap:.5rem;background:var(--surface2);color:var(--text);border:1px solid var(--border2);padding:.5rem 1.125rem;border-radius:8px;cursor:pointer;font-family:inherit;font-size:.825rem;font-weight:600;transition:all .15s;}
.result-copy:hover{border-color:var(--primary);color:var(--primary-light);}
.result-copy.copied{background:var(--green);border-color:var(--green);}

/* INFO/FACT CARDS */
.info-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;margin-bottom:1.5rem;}
.info-card h2{font-size:1rem;font-weight:700;margin-bottom:.875rem;color:var(--text);}
.info-card p{color:var(--muted);font-size:.9rem;line-height:1.75;margin-bottom:.6rem;}
.info-card p:last-child{margin-bottom:0;}
.info-card a{color:var(--primary-light);}
.info-card ul{color:var(--muted);font-size:.9rem;line-height:1.75;padding-left:1.25rem;}
.info-card li{margin-bottom:.3rem;}
.fact-card{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--primary);border-radius:var(--radius);padding:1.25rem;margin-bottom:1.5rem;}
.fact-label{font-size:.65rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--primary-light);margin-bottom:.75rem;}
.fact-item{font-size:.875rem;color:var(--muted);margin-bottom:.4rem;}

/* PAGE HERO */
.page-hero{background:linear-gradient(135deg,var(--surface) 0%,#0d1829 100%);border:1px solid var(--border2);border-radius:18px;padding:2rem 2.5rem;margin-bottom:2rem;}
.breadcrumb{font-size:.78rem;color:var(--muted);margin-bottom:.75rem;}
.breadcrumb a{color:var(--muted);text-decoration:none;}
.breadcrumb a:hover{color:var(--text);}
.page-hero h1{font-family:'Syne',sans-serif;font-size:clamp(1.4rem,3vw,2rem);font-weight:800;margin-bottom:.35rem;letter-spacing:-.5px;}
.page-hero p{color:var(--muted);font-size:.95rem;}

/* COUNTDOWN */
.cd-hero{background:linear-gradient(135deg,var(--surface) 0%,#0d1829 100%);border:1px solid var(--border2);border-radius:20px;padding:2.5rem;margin-bottom:2rem;text-align:center;position:relative;overflow:hidden;}
.cd-hero::before{content:'';position:absolute;top:-80px;left:50%;transform:translateX(-50%);width:400px;height:200px;background:radial-gradient(ellipse,rgba(167,139,250,.12) 0%,transparent 70%);pointer-events:none;}
.cd-emoji{font-size:4rem;display:block;margin-bottom:.75rem;}
.cd-hero h1{font-family:'Syne',sans-serif;font-size:clamp(1.6rem,4vw,2.5rem);font-weight:800;margin-bottom:.5rem;letter-spacing:-.5px;}
.cd-date{font-size:.9rem;color:var(--muted);margin-bottom:1.5rem;}
.cd-blocks{display:flex;justify-content:center;gap:.875rem;flex-wrap:wrap;margin-bottom:1.5rem;}
.cd-block{background:rgba(255,255,255,.06);border:1px solid var(--border2);border-radius:14px;padding:1rem 1.25rem;min-width:85px;text-align:center;}
.cd-num{font-family:'Syne',sans-serif;font-size:2.5rem;font-weight:800;line-height:1;display:block;color:var(--primary-light);}
.cd-unit{font-size:.62rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-top:.25rem;}
.cd-today{color:var(--green);font-size:1.3rem;font-weight:700;}
.cd-past{color:var(--yellow);font-size:.95rem;}
.share-btn{background:var(--surface2);color:var(--text);border:1px solid var(--border2);padding:.6rem 1.25rem;border-radius:8px;cursor:pointer;font-family:inherit;font-size:.875rem;font-weight:600;transition:all .15s;}
.share-btn:hover{border-color:var(--primary);color:var(--primary-light);}
.share-btn.copied{background:var(--green);border-color:var(--green);}

/* HOLIDAY/COUNTRY GRIDS */
.holiday-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:.875rem;margin-bottom:2rem;}
.hol-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:1.1rem;text-decoration:none;color:var(--text);transition:all .15s;text-align:center;display:block;}
.hol-card:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:0 4px 20px rgba(167,139,250,.2);}
.hol-emoji{font-size:2.25rem;display:block;margin-bottom:.4rem;}
.hol-name{font-weight:700;font-size:.88rem;margin-bottom:.25rem;}
.hol-date{font-size:.75rem;color:var(--muted);margin-bottom:.5rem;}
.hol-days{font-size:1.6rem;font-weight:800;color:var(--primary-light);}
.hol-days.past{color:var(--yellow);}
.hol-unit{font-size:.68rem;color:var(--muted);}
.country-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:.875rem;margin-bottom:2rem;}
.country-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem;text-decoration:none;color:var(--text);transition:all .15s;display:flex;align-items:center;gap:.875rem;}
.country-card:hover{border-color:var(--primary);transform:translateY(-2px);}
.c-flag{font-size:1.75rem;}.c-name{font-weight:600;font-size:.88rem;}.c-sub{font-size:.73rem;color:var(--muted);}

/* DATE/TERM CARDS */
.hdate-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:.75rem;margin:1rem 0;}
.hdate-card{background:var(--surface2);border:1px solid var(--border);border-radius:10px;padding:.875rem;}
.season-tag{font-size:.62rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--primary-light);margin-bottom:.35rem;}
.date-range{font-weight:700;font-size:.9rem;color:var(--text);}
.date-dur{font-size:.75rem;color:var(--muted);margin-top:.2rem;}
.term-table{width:100%;border-collapse:collapse;font-size:.875rem;}
.term-table th{background:var(--surface2);color:var(--muted);padding:.65rem 1rem;text-align:left;font-weight:700;font-size:.65rem;letter-spacing:.5px;text-transform:uppercase;border-bottom:1px solid var(--border);}
.term-table td{padding:.7rem 1rem;border-bottom:1px solid var(--border);color:var(--muted);}
.term-table td:first-child{color:var(--text);}
.term-table tr:last-child td{border-bottom:none;}
.term-table tr:hover td{background:rgba(255,255,255,.02);}
.ttag{display:inline-block;font-size:.62rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;padding:.18rem .5rem;border-radius:4px;}
.ttag.t1{background:rgba(167,139,250,.2);color:var(--primary-light);}
.ttag.t2{background:rgba(52,211,153,.2);color:#6ee7b7;}
.ttag.t3{background:rgba(245,158,11,.2);color:#fcd34d;}
.ttag.t4{background:rgba(251,146,60,.2);color:#fdba74;}
.ttag.hol{background:rgba(239,68,68,.2);color:#fca5a5;}
.next-now{display:inline-flex;align-items:center;gap:.3rem;background:rgba(167,139,250,.15);border:1px solid rgba(167,139,250,.3);border-radius:5px;padding:.15rem .5rem;font-size:.65rem;font-weight:.6;color:var(--primary-light);margin-left:.4rem;}

/* FAQ */
.faq-item{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:.75rem;overflow:hidden;background:var(--surface);}
.faq-q{width:100%;background:none;border:none;padding:1rem 1.25rem;font-family:inherit;font-size:.9rem;font-weight:600;text-align:left;cursor:pointer;display:flex;justify-content:space-between;align-items:center;color:var(--text);}
.faq-q:hover{background:var(--surface2);}
.faq-arrow{font-size:.75rem;color:var(--muted);transition:transform .25s;}
.faq-q.open .faq-arrow{transform:rotate(180deg);}
.faq-a{display:none;padding:0 1.25rem 1rem;color:var(--muted);font-size:.875rem;line-height:1.75;}
.faq-a.open{display:block;}
.faq-a a{color:var(--primary-light);}

/* FORM */
.form-group{margin-bottom:1.25rem;}
.form-group label{display:block;font-size:.68rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--muted);margin-bottom:.4rem;}
.form-group input,.form-group textarea,.form-group select{width:100%;padding:.75rem 1rem;border:1.5px solid var(--border2);border-radius:10px;font-family:inherit;font-size:.95rem;color:var(--text);background:var(--surface2);resize:vertical;}
.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(167,139,250,.15);}
.form-group textarea{min-height:120px;}
.submit-btn{background:linear-gradient(135deg,#60A5FA,#A78BFA);color:#fff;border:none;padding:.875rem 2rem;border-radius:10px;font-family:inherit;font-size:1rem;font-weight:700;cursor:pointer;transition:all .15s;}
.submit-btn:hover{opacity:.88;box-shadow:var(--glow);}
.form-success{display:none;background:rgba(52,211,153,.1);border:1px solid rgba(52,211,153,.3);border-radius:8px;padding:1rem 1.25rem;color:#6ee7b7;font-size:.875rem;margin-top:1rem;}

/* MOON */
.moon-phase-display{text-align:center;padding:2rem;background:linear-gradient(135deg,var(--bg),var(--surface));border:1px solid var(--border2);border-radius:16px;margin-bottom:1.5rem;}
.moon-emoji{font-size:5rem;display:block;margin-bottom:.75rem;}
.moon-name{font-family:'Syne',sans-serif;font-size:1.5rem;font-weight:800;margin-bottom:.5rem;}
.moon-illumination{font-size:1rem;color:var(--muted);}
.moon-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin:1rem 0;}
.moon-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:.875rem;text-align:center;}
.moon-card .m-emoji{font-size:1.75rem;display:block;margin-bottom:.35rem;}
.moon-card .m-name{font-weight:600;font-size:.82rem;color:var(--text);}
.moon-card .m-date{font-size:.73rem;color:var(--muted);margin-top:.2rem;}

/* CALENDAR */
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:1.5rem;}
.cal-header{background:var(--surface2);color:var(--muted);text-align:center;padding:.5rem;font-size:.7rem;font-weight:700;}
.cal-day{background:var(--surface);border:1px solid var(--border);padding:.5rem;min-height:70px;font-size:.8rem;color:var(--muted);}
.cal-day.other-month{background:var(--surface2);opacity:.4;}
.cal-day.today{background:rgba(167,139,250,.15);border-color:var(--primary);}
.cal-day.has-holiday{border-color:var(--yellow);}
.cal-day-num{font-weight:700;margin-bottom:.2rem;color:var(--text);}
.cal-hol-tag{font-size:.6rem;color:var(--yellow);font-weight:600;}
.cal-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;}
.cal-nav button{background:var(--surface2);border:1px solid var(--border2);border-radius:8px;padding:.5rem .875rem;font-family:inherit;font-weight:600;cursor:pointer;transition:all .15s;color:var(--text);}
.cal-nav button:hover{border-color:var(--primary);color:var(--primary-light);}
.cal-nav h2{font-size:1.2rem;font-weight:800;}

/* ADS */
.ad-wrap{background:transparent;border:1px dashed rgba(255,255,255,.06);border-radius:var(--radius);padding:.5rem;text-align:center;margin-bottom:1rem;min-height:0;overflow:hidden;}
.ad-wrap ins{min-height:0!important;}
.ad-label{font-size:.58rem;letter-spacing:1px;text-transform:uppercase;color:rgba(255,255,255,.12);margin-bottom:.25rem;}

/* SISTER BANNER */
.sister-banner{background:var(--surface2);border:1px solid var(--border2);border-radius:var(--radius);padding:1rem 1.25rem;margin-bottom:1.5rem;display:flex;align-items:center;gap:.875rem;text-decoration:none;transition:all .15s;}
.sister-banner:hover{border-color:var(--primary);transform:translateY(-1px);}
.sister-icon{font-size:1.75rem;}
.sister-title{font-weight:700;font-size:.9rem;color:var(--text);}
.sister-sub{font-size:.75rem;color:var(--muted);margin-top:.1rem;}

/* FOOTER */
.site-footer{background:var(--surface);border-top:1px solid var(--border);padding:3rem 0 2rem;margin-top:4rem;position:relative;z-index:1;}
.footer-grid{max-width:1200px;margin:0 auto;padding:0 1.5rem;display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:2rem;margin-bottom:2.5rem;}
.footer-logo{font-family:'Syne',sans-serif;font-size:1.1rem;font-weight:800;color:var(--text);display:flex;align-items:center;gap:.4rem;margin-bottom:.75rem;}
.footer-logo span{color:var(--primary-light);}
.footer-brand p{font-size:.8rem;line-height:1.6;color:var(--muted);max-width:220px;}
.footer-col h4{font-size:.65rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:rgba(255,255,255,.25);margin-bottom:.875rem;}
.footer-col a{display:block;color:var(--muted);text-decoration:none;font-size:.8rem;margin-bottom:.35rem;transition:color .15s;}
.footer-col a:hover{color:var(--text);}
.footer-bottom{max-width:1200px;margin:0 auto;padding:1.5rem 1.5rem 0;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;}
.footer-bottom p{font-size:.78rem;color:var(--muted);}
.ftm-links{display:flex;gap:1.25rem;}
.ftm-links a{color:var(--muted);text-decoration:none;font-size:.78rem;}
.ftm-links a:hover{color:var(--text);}

/* RESPONSIVE */
@media(max-width:1050px){.footer-grid{grid-template-columns:1fr 1fr 1fr;}}
@media(max-width:960px){.two-col{grid-template-columns:1fr;}.footer-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:640px){
  nav a:not(.nav-sister):not(.active){display:none;}
  .input-row,.input-row.triple{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr;gap:1.5rem;}
  .footer-bottom{flex-direction:column;text-align:center;}
  .hero{padding:1.75rem;}.hero::after{display:none;}
  .moon-grid{grid-template-columns:repeat(2,1fr);}
  .stats-row{gap:1rem;}.stat-num{font-size:1.5rem;}
}
@media print{
  .site-header,.site-footer,.ad-wrap,aside{display:none;}
  body{background:white;color:black;}
  .calc-card,.info-card,.page-hero,.cd-hero{background:white;border-color:#ddd;}
  .cal-day{background:white;border-color:#ddd;min-height:80px;}
  .cal-day-num,.cal-nav h2{color:black;}
  .cal-header{background:#eee;color:#333;}
}
