/* =======================================================================
   Rena Howell Five Element Acupuncture & Herbal Medicine — shared styles
   Used by: index, blogs,  speciality
   ======================================================================= */

:root{
  --paper: #E7E1D2;
  --paper-deep: #DBD2BB;
  --ink: #262420;
  --ink-soft: #55524A;
  --wood: #4B6B4E;
  --fire: #A6453B;
  --earth: #B98A3E;
  --metal: #83837A;
  --water: #33566B;
  --line: rgba(38,36,32,0.16);
  --max: 760px;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:'Work Sans', sans-serif;
  font-weight:400;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto;}
  *{animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important;}
}

h1,h2,h3,.display{
  font-family:'Fraunces', serif;
  font-weight:500;
  letter-spacing:-0.01em;
  margin:0;
}

a{color:inherit;}
button{font-family:inherit;}

.eyebrow{
  font-family:'Work Sans', sans-serif;
  text-transform:uppercase;
  letter-spacing:0.18em;
  font-size:0.72rem;
  font-weight:600;
  color:var(--ink-soft);
}

.wrap{max-width:1080px; margin:0 auto; padding:0 28px;}
.prose{max-width:var(--max); margin:0 auto;}

/* ---------- Nav ---------- */
header{
  position:fixed; top:0; left:0; right:0; z-index:50;
  background:rgba(231,225,210,0.86);
  backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line);
}
nav.wrap{
  display:flex; align-items:center; justify-content:space-between;
  height:76px;
}
.brand{display:flex; align-items:center; gap:12px; text-decoration:none;}
.brand svg, .brand img{width:34px; height:34px; flex-shrink:0; object-fit:contain;}
.brand-text{font-family:'Fraunces',serif; font-size:1rem; font-weight:500; line-height:1.15; color:var(--ink);}
.brand-text span{display:block; font-family:'Work Sans',sans-serif; font-size:0.68rem; letter-spacing:0.1em; text-transform:uppercase; color:var(--ink-soft); font-weight:500;}

.nav-links{display:flex; align-items:center; gap:14px; list-style:none; margin:0; padding:0;}
.nav-links a{
  text-decoration:none; font-size:1rem; color:var(--ink); white-space:nowrap;
  display:inline-block; padding:9px 16px; border-radius:8px;
  background:linear-gradient(180deg, rgba(255,255,255,0.75), rgba(255,255,255,0) 55%), var(--paper);
  border:1px solid rgba(38,36,32,0.15);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.65),
    0 1px 1px rgba(38,36,32,0.08),
    0 3px 6px rgba(38,36,32,0.14),
    0 6px 10px rgba(38,36,32,0.08);
  transition:transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}
.nav-links a:hover{
  transform:translateY(-2px);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.75),
    0 2px 2px rgba(38,36,32,0.1),
    0 6px 10px rgba(38,36,32,0.16),
    0 10px 16px rgba(38,36,32,0.1);
}
.nav-links a:active{
  transform:translateY(1px);
  box-shadow:
    inset 0 2px 4px rgba(38,36,32,0.18),
    0 1px 1px rgba(38,36,32,0.08);
}
.nav-links a.active{
  background:linear-gradient(180deg, rgba(38,36,32,0.06), rgba(38,36,32,0) 55%), var(--paper);
  box-shadow:
    inset 0 2px 4px rgba(38,36,32,0.16),
    inset 0 1px 0 rgba(255,255,255,0.4);
  transform:translateY(1px);
}
.nav-toggle{display:none;}

@media (max-width:820px){
  .nav-links{
    position:fixed; top:76px; left:0; right:0;
    background:var(--paper); border-bottom:1px solid var(--line);
    flex-direction:column; align-items:stretch; gap:10px;
    max-height:0; overflow:hidden; transition:max-height 0.3s ease;
    padding:0 18px;
  }
  .nav-links.open{max-height:420px; padding:14px 18px 20px;}
  .nav-links li{width:100%;}
  .nav-links a{
    display:block; padding:14px 18px; text-align:center;
    border-bottom:none;
  }
  .nav-links a.active{transform:none;}
  .nav-toggle{
    display:flex; flex-direction:column; gap:5px;
    background:linear-gradient(180deg, rgba(255,255,255,0.75), rgba(255,255,255,0) 55%), var(--paper);
    border:1px solid rgba(38,36,32,0.15); border-radius:8px;
    cursor:pointer; padding:10px;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,0.65),
      0 2px 4px rgba(38,36,32,0.1),
      0 4px 8px rgba(38,36,32,0.1);
  }
  .nav-toggle:active{
    box-shadow:inset 0 2px 4px rgba(38,36,32,0.2);
  }
  .nav-toggle span{width:22px; height:1.5px; background:var(--ink); display:block;}
}
/* pages with a longer link list need a taller mobile nav panel */
body.page-speciality .nav-links.open{max-height:480px;}
body.page-elements .nav-links.open{max-height:480px;}

/* ---------- Page heading ---------- */
.page-heading{
  padding:132px 28px 0;
  text-align:center;
}
.page-heading h1{
  font-size:clamp(1.6rem, 3.4vw, 2.6rem);
  font-style:italic;
  font-weight:400;
  color:var(--ink);
}
.page-heading p{
  margin-top:14px; color:var(--ink-soft); font-size:1rem;
}
body.page-speciality .page-heading p{
  margin:14px auto 0; max-width:56ch;
}
@media (max-width:820px){
  .page-heading{padding-top:112px;}
}

/* ---------- Hero (home page) ---------- */
.hero{
  padding:56px 0 96px;
}
.hero-eyebrow{margin-bottom:22px; text-transform:none; font-size:0.98rem;}
.hero-tagline{
  font-size:clamp(2.4rem, 5vw, 4rem);
  font-style:italic;
  font-weight:400;
  max-width:34ch;
  color:var(--ink);
  display:flow-root; /* contain the floated logo so it doesn't bleed into the next paragraph */
}
.hero-brush{
  float:left;
  width:clamp(96px, 14vw, 176px);
  height:auto;
  margin:6px 22px 12px 0;
  shape-outside:ellipse(50% 50%);
  shape-margin:12px;
  pointer-events:none;
}
@media (max-width:820px){
  .hero-brush{
    width:96px;
    margin:4px 16px 8px 0;
  }
}
.hero-sub{
  max-width:none;
  margin-top:26px;
  font-size:1.08rem;
  color:var(--ink-soft);
}
.hero-cta{display:flex; gap:16px; margin-top:38px; flex-wrap:wrap;}
.btn{
  display:inline-flex; align-items:center; gap:10px;
  padding:14px 26px; border-radius:2px; text-decoration:none;
  font-size:0.92rem; letter-spacing:0.02em; border:1px solid var(--ink);
  transition:background 0.2s ease, color 0.2s ease;
}
.btn-solid{background:var(--ink); color:var(--paper);}
.btn-solid:hover{background:var(--fire); border-color:var(--fire);}
.btn-outline{background:transparent; color:var(--ink);}
.btn-outline:hover{background:var(--ink); color:var(--paper);}

.hero-facts{
  display:flex; gap:36px; margin-top:64px; flex-wrap:wrap;
  padding-top:32px; border-top:1px solid var(--line);
}
.hero-fact{font-size:0.85rem; color:var(--ink-soft); max-width:220px;}
.hero-fact strong{display:block; font-family:'Fraunces',serif; font-size:1.05rem; font-weight:500; color:var(--ink); font-style:italic; margin-bottom:4px;}

/* ---------- Section shell ---------- */
section{padding:104px 0;}
body.page-blogs section{padding:88px 0 104px;}
body.page-speciality section{padding:64px 0 104px;}

.section-alt{background:var(--paper-deep);}
.section-ink{background:var(--ink); color:var(--paper);}
.section-ink .eyebrow{color:rgba(231,225,210,0.6);}
.section-head{max-width:640px; margin:0 auto 56px;}
.section-head h2{font-size:clamp(1.8rem,3.2vw,2.5rem); font-style:italic; font-weight:400; margin-top:14px;}
.section-head p{margin-top:18px; color:var(--ink-soft); font-size:1.02rem;}
.section-ink .section-head p{color:rgba(231,225,210,0.75);}

/* ---------- About (home page) ---------- */
.about-grid{display:grid; grid-template-columns:0.9fr 1.1fr; gap:64px; align-items:start;}
.about-mark{
  aspect-ratio:3/4; border:1px solid var(--line); position:relative;
  display:flex; align-items:center; justify-content:center;
  background:linear-gradient(160deg, rgba(75,107,78,0.10), rgba(51,86,107,0.10));
}
.about-mark svg{width:58%; height:58%;}
.about-credentials{list-style:none; margin:28px 0 0; padding:0;}
.about-credentials li{
  padding:16px 0; border-top:1px solid var(--line);
  display:grid; grid-template-columns:110px 1fr; gap:18px; font-size:0.92rem;
}
.about-credentials li:last-child{border-bottom:1px solid var(--line);}
.about-credentials .cred-label{color:var(--ink-soft); font-size:0.75rem; text-transform:uppercase; letter-spacing:0.08em; padding-top:2px;}

@media (max-width:820px){
  .about-grid{grid-template-columns:1fr; gap:40px;}
  .about-mark{aspect-ratio:16/10;}
}

/* ---------- Five Element wheel (home page) ---------- */
.wheel-layout{display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center;}
.wheel-svg{width:100%; height:auto;}
.element-list{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:22px;}
.element-list li{display:grid; grid-template-columns:14px 1fr; gap:16px; align-items:baseline;}
.dot{width:11px; height:11px; border-radius:50%; margin-top:6px;}
.element-list h3{font-size:1.08rem; font-style:italic; font-weight:500;}
.element-list p{margin:6px 0 0; font-size:0.92rem; color:rgba(231,225,210,0.72);}
.element-list .tag{font-size:0.68rem; text-transform:uppercase; letter-spacing:0.1em; color:rgba(231,225,210,0.55); margin-left:8px;}

@media (max-width:820px){
  .wheel-layout{grid-template-columns:1fr; gap:40px;}
}

/* ---------- Services (home page) ---------- */
.services-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line);}
.service-card{background:var(--paper); padding:40px 34px;}
.service-card .num{font-family:'Fraunces',serif; font-style:italic; color:var(--fire); font-size:1rem;}
.service-card h3{margin-top:18px; font-size:1.2rem; font-weight:500; font-style:italic;}
.service-card p{margin-top:14px; font-size:0.92rem; color:var(--ink-soft);}
@media (max-width:820px){.services-grid{grid-template-columns:1fr;}}

/* ---------- Visit (home page) ---------- */
.visit-grid{display:grid; grid-template-columns:1fr 1fr; gap:64px;}
.visit-block h3{font-size:1rem; text-transform:uppercase; letter-spacing:0.08em; font-weight:600; font-family:'Work Sans',sans-serif; font-style:normal; color:var(--ink-soft); margin-bottom:14px;}
.visit-block p{margin:0 0 6px;}
.visit-block .big{font-family:'Fraunces',serif; font-style:italic; font-size:1.4rem; font-weight:500;}
.visit-note{
  margin-top:28px; padding:18px 20px; border-left:2px solid var(--wood);
  background:rgba(75,107,78,0.08); font-size:0.9rem;
}
@media (max-width:820px){.visit-grid{grid-template-columns:1fr; gap:44px;}}

/* ---------- Blogs ---------- */
.blog-grid{display:flex; flex-direction:column; gap:1px; background:var(--line); border:1px solid var(--line);}
.blog-card{
  background:var(--paper); display:grid; grid-template-columns:320px 1fr; gap:0;
}
.blog-card:nth-child(even){grid-template-columns:1fr 320px;}
.blog-card:nth-child(even) .blog-media{order:2;}
.blog-media{position:relative; overflow:hidden; min-height:240px;}
.blog-media img{width:100%; height:100%; object-fit:cover; display:block;}
.blog-body{padding:44px 44px;}
.blog-body .num{font-family:'Fraunces',serif; font-style:italic; color:var(--fire); font-size:1rem;}
.blog-body h3{margin-top:16px; font-size:1.35rem; font-weight:500; font-style:italic;}
.blog-body p{margin-top:16px; font-size:0.95rem; color:var(--ink-soft);}
.blog-body p + p{margin-top:12px;}
@media (max-width:820px){
  .blog-card, .blog-card:nth-child(even){grid-template-columns:1fr;}
  .blog-card:nth-child(even) .blog-media{order:0;}
  .blog-media{min-height:200px;}
  .blog-body{padding:34px 28px;}
}

/* ---------- Blog feature embeds (scoped, self-contained per source page) ---------- */
.blog-feature{background:var(--paper); padding:44px;}
.blog-feature .num{font-family:'Fraunces',serif; font-style:italic; color:var(--fire); font-size:1rem; margin-bottom:20px;}
@media (max-width:820px){ .blog-feature{padding:30px 22px;} }

/* -- embed-pulse : from pulse.html -- */
.embed-pulse{
  --p-bg:#fcf9f5; --p-card-bg:#ffffff; --p-primary:#4a3b32; --p-accent:#8c6d58;
  --p-accent-light:#e8ded5; --p-text-dark:#2c2523; --p-text-muted:#665a52;
  --p-border:#ebdcd0; --p-shadow:rgba(74,59,50,0.08);
  font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Georgia, serif;
  color:var(--p-text-dark); line-height:1.7;
}
.embed-pulse .container{max-width:860px; margin:0 auto; background:var(--p-card-bg); border-radius:12px; box-shadow:0 10px 30px var(--p-shadow); border:1px solid var(--p-border); overflow:hidden;}
.embed-pulse .hero{position:relative; background-color:var(--p-accent-light); text-align:center; padding:3rem 2rem 2rem; border-bottom:1px solid var(--p-border);}
.embed-pulse .hero-image{float:left; width:25%; height:auto; border-radius:8px; box-shadow:0 4px 15px rgba(0,0,0,0.1); margin:0 1.5rem 1rem 0; object-fit:cover;}
.embed-pulse h1{font-family:Georgia,'Times New Roman',serif; font-size:2rem; color:var(--p-primary); letter-spacing:0.5px; text-transform:uppercase; font-weight:600; font-style:normal; margin-bottom:0.5rem;}
.embed-pulse .subtitle{font-size:1.1rem; color:var(--p-accent); font-style:italic;}
.embed-pulse .content{padding:2.5rem;}
.embed-pulse .content::after{content:""; display:table; clear:both;}
.embed-pulse h2{font-family:Georgia,'Times New Roman',serif; font-style:normal; font-size:1.35rem; font-weight:600; color:var(--p-primary); margin:2rem 0 1rem;}
.embed-pulse p{margin-bottom:1.5rem; color:var(--p-text-dark); font-size:1.05rem;}
.embed-pulse .intro-text{font-size:1.15rem; color:var(--p-primary); font-weight:500;}
.embed-pulse .highlight-box{background-color:#f7f3ee; border-left:4px solid var(--p-accent); padding:1.25rem 1.5rem; margin:2rem 0; border-radius:0 8px 8px 0; clear:both;}
.embed-pulse .highlight-box h3{color:var(--p-primary); margin-bottom:0.5rem; font-size:1.2rem; font-style:normal;}
.embed-pulse .grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:1.5rem; margin:2rem 0;}
.embed-pulse .card{background:var(--p-bg); border:1px solid var(--p-border); border-radius:8px; padding:1.5rem;}
.embed-pulse .card h3{color:var(--p-accent); font-size:1.15rem; margin-bottom:0.75rem; border-bottom:2px solid var(--p-border); padding-bottom:0.4rem; font-style:normal;}
.embed-pulse .card ul{list-style-type:none;}
.embed-pulse .card li{position:relative; padding-left:1.25rem; margin-bottom:0.5rem; color:var(--p-text-dark);}
.embed-pulse .card li::before{content:"•"; color:var(--p-accent); font-weight:bold; position:absolute; left:0;}
.embed-pulse .attributes-list{display:flex; flex-wrap:wrap; gap:0.75rem; margin-top:1rem;}
.embed-pulse .tag{background-color:var(--p-accent-light); color:var(--p-primary); padding:0.4rem 1rem; border-radius:20px; font-weight:600; font-size:0.95rem;}
.embed-pulse footer{text-align:center; padding:1.5rem; background-color:var(--p-bg); border-top:1px solid var(--p-border); color:var(--p-text-muted); font-size:0.9rem;}
@media (max-width:600px){
  .embed-pulse .content{padding:1.5rem;}
  .embed-pulse h1{font-size:1.5rem;}
  .embed-pulse .hero-image{width:100%; float:none; margin:0 0 1.5rem 0;}
}

/* -- embed-vs : from vs.html -- */
.embed-vs{font-family:Arial, sans-serif;}
.embed-vs h1{text-align:center; font-family:Arial, sans-serif; font-style:normal; font-weight:700; text-transform:none; letter-spacing:normal; font-size:1.8rem; color:var(--ink); margin-bottom:1.5rem;}
.embed-vs .table-wrap{border-radius:10px; overflow:hidden; box-shadow:0 6px 20px rgba(38,36,32,0.12);}
.embed-vs table{width:100%; border-collapse:collapse; font-family:Arial, sans-serif;}
.embed-vs th, .embed-vs td{padding:15px; text-align:left; vertical-align:top; border:2px solid #ffffff;}
.embed-vs th{font-size:1.2em;}
.embed-vs th:nth-child(1), .embed-vs td:nth-child(1){background-color:#581c87; color:#ffffff; width:50%;}
.embed-vs th:nth-child(2), .embed-vs td:nth-child(2){background-color:#7e5bef; color:#ffffff; width:50%;}

/* -- embed-helps : from helps.html -- */
.embed-helps .card{background-color:#407b7b; color:#ffffff; width:100%; padding:60px; border-radius:8px; box-shadow:0 10px 25px rgba(0,0,0,0.15); position:relative; overflow:hidden;}
.embed-helps h1{font-family:system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; font-style:normal; font-size:2.3rem; font-weight:600; margin-bottom:2rem; color:#ffffff; letter-spacing:0.5px;}
.embed-helps h1 span{color:#f7e682;}
.embed-helps .content-container{display:flex; align-items:center; justify-content:space-between; gap:40px;}
.embed-helps .text-content{flex:1; max-width:55%;}
.embed-helps ul{list-style-type:none;}
.embed-helps li{font-size:1.25rem; line-height:1.4; margin-bottom:22px; position:relative; padding-left:35px; font-weight:300; color:#ffffff;}
.embed-helps li::before{content:"•"; position:absolute; left:0; top:-2px; color:#ffffff; font-size:1.6rem;}
.embed-helps .image-container{flex:1; display:flex; justify-content:flex-end; position:relative;}
.embed-helps .circle-image{width:260px; height:260px; border-radius:50%; border:5px solid #f7e682; object-fit:cover; box-shadow:0 4px 15px rgba(0,0,0,0.2);}
@media (max-width:820px){
  .embed-helps .card{padding:30px;}
  .embed-helps h1{font-size:1.8rem; text-align:center;}
  .embed-helps .content-container{flex-direction:column-reverse;}
  .embed-helps .text-content{max-width:100%;}
  .embed-helps li{font-size:1.05rem;}
  .embed-helps .circle-image{width:200px; height:200px;}
  .embed-helps .image-container{justify-content:center; margin-bottom:20px;}
}

/* ---------- Speciality panel ---------- */
.spec-grid{
  display:grid; grid-template-columns:repeat(4,1fr); gap:1px;
  background:var(--line); border:1px solid var(--line);
}
.spec-btn{
  background:var(--paper); border:none; margin:0; padding:0;
  cursor:pointer; text-align:left; display:block; width:100%;
  color:var(--ink); font-family:inherit;
}
.spec-media{aspect-ratio:4/3; overflow:hidden; position:relative;}
.spec-media img{width:100%; height:100%; object-fit:cover; display:block; transition:transform 0.5s ease;}
.spec-btn:hover .spec-media img{transform:scale(1.06);}
.spec-label{padding:20px 20px 24px;}
.spec-label .num{font-family:'Fraunces',serif; font-style:italic; color:var(--fire); font-size:0.85rem;}
.spec-label h3{margin-top:10px; font-size:1.02rem; font-weight:500; font-style:italic; line-height:1.3;}
.spec-label .cta{margin-top:10px; font-size:0.78rem; text-transform:uppercase; letter-spacing:0.08em; color:var(--ink-soft);}

@media (max-width:960px){ .spec-grid{grid-template-columns:repeat(2,1fr);} }
@media (max-width:520px){ .spec-grid{grid-template-columns:1fr;} }

/* ---------- Modal (speciality page) ---------- */
.modal-overlay{
  position:fixed; inset:0; z-index:100; background:rgba(38,36,32,0.62);
  display:none; align-items:flex-start; justify-content:center;
  padding:96px 20px 40px; overflow-y:auto;
}
.modal-overlay.open{display:flex;}
.modal{
  background:var(--paper); max-width:680px; width:100%;
  border:1px solid var(--line); position:relative;
  animation:modalIn 0.25s ease;
}
@keyframes modalIn{ from{opacity:0; transform:translateY(12px);} to{opacity:1; transform:translateY(0);} }
.modal-media{width:100%; overflow:hidden;}
.modal-media img{width:100%; height:auto; object-fit:contain; display:block;}
.modal-body{padding:36px 40px 40px;}
.modal-body h2{font-size:1.5rem; font-style:italic; font-weight:500;}
.modal-body p{margin-top:16px; font-size:0.96rem; color:var(--ink-soft); white-space:pre-line;}
.modal-close{
  position:absolute; top:16px; right:16px; width:36px; height:36px;
  border-radius:50%; border:1px solid var(--line); background:var(--paper);
  display:flex; align-items:center; justify-content:center; cursor:pointer;
  font-size:1.1rem; line-height:1; color:var(--ink);
}
.modal-close:hover{background:var(--ink); color:var(--paper); border-color:var(--ink);}
@media (max-width:600px){
  .modal-overlay{padding:88px 14px 30px;}
  .modal-body{padding:28px 24px 32px;}
}

/* ---------- Footer ---------- */
footer{padding:56px 0 40px; border-top:1px solid var(--line);}
.footer-grid{display:flex; justify-content:space-between; align-items:flex-end; flex-wrap:wrap; gap:24px;}
.footer-grid .brand-text{font-size:0.95rem;}
footer nav ul{list-style:none; display:flex; align-items:center; gap:12px; padding:0; margin:0; flex-wrap:wrap;}
footer nav a{
  text-decoration:none; font-size:1rem; color:var(--ink); white-space:nowrap;
  display:inline-block; padding:9px 16px; border-radius:8px;
  background:linear-gradient(180deg, rgba(255,255,255,0.75), rgba(255,255,255,0) 55%), var(--paper);
  border:1px solid rgba(38,36,32,0.15);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.65),
    0 1px 1px rgba(38,36,32,0.08),
    0 3px 6px rgba(38,36,32,0.14),
    0 6px 10px rgba(38,36,32,0.08);
  transition:transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}
footer nav a:hover{
  transform:translateY(-2px);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.75),
    0 2px 2px rgba(38,36,32,0.1),
    0 6px 10px rgba(38,36,32,0.16),
    0 10px 16px rgba(38,36,32,0.1);
}
footer nav a:active{
  transform:translateY(1px);
  box-shadow:
    inset 0 2px 4px rgba(38,36,32,0.18),
    0 1px 1px rgba(38,36,32,0.08);
}
@media (max-width:600px){
  footer nav ul{gap:10px;}
  footer nav a{padding:8px 13px; font-size:0.95rem;}
}
.footer-fine{margin-top:36px; font-size:0.76rem; color:var(--ink-soft); border-top:1px solid var(--line); padding-top:20px;}

.reveal{opacity:0; transform:translateY(16px); transition:opacity 0.7s ease, transform 0.7s ease;}
.reveal.in{opacity:1; transform:translateY(0);}
