/* 칠순 ② 형압 숫자 70 · 상아 면지 + 블라인드 형압 + 금박 선, 목련 분홍 한 점 */
:root{
  --page:#EDE6DA; --paper:#F7F2E8; --fg:#2F2A25; --sub:#857A6C; --line:#E3D9C8;
  --accent:#9E7A3E; --on-accent:#fff; --sun:#B4646A; --gold:#B8955A;
  --font:'Nanum Myeongjo',serif; --disp:'Cormorant Garamond',serif; --pen:'Nanum Pen Script',cursive;
  --card:#F7F2E8; --fab-bg:rgba(47,42,37,.45);
}
body{background:var(--page)}
.main{max-width:480px;margin:0 auto;background:var(--paper);overflow:hidden;box-shadow:0 0 50px rgba(60,45,30,.14)}
.n70{font:300 170px/1 var(--disp);color:var(--paper);text-shadow:-2px -2px 1px rgba(255,255,255,.95),2px 2px 3px rgba(80,60,30,.28);letter-spacing:-.02em}
.n70.sm{font-size:90px;color:#2a241f;text-shadow:-1px -1px 0 rgba(255,255,255,.08),1px 1px 2px rgba(0,0,0,.5)}
.k{font:500 15px/1 var(--disp);letter-spacing:.4em;padding-left:.4em;color:var(--accent);margin-bottom:16px;text-transform:uppercase}
h2{font-size:25px;font-weight:700;margin-bottom:24px}
.sec{padding:62px 24px 22px;text-align:center}
.cv{text-align:center;padding:40px 22px 30px}
.cv-k{font:500 16px var(--disp);letter-spacing:.3em;color:var(--gold);margin-top:-14px}
.cv h1{font-size:26px;line-height:1.55;margin:16px 0 26px}
.cv-ph{border:1px solid var(--gold);padding:8px;background:#fff}
.cv-ph img{width:100%;height:auto}
.cv-d{font-size:19px;margin-top:22px;line-height:1.8}
.lt{font-size:19px;line-height:2}
.years{list-style:none;position:relative;text-align:left;padding-left:30px}
.years::before{content:"";position:absolute;left:8px;top:6px;bottom:6px;width:1px;background:var(--gold)}
.years li{position:relative;margin-bottom:34px}
.years li::before{content:"";position:absolute;left:-27px;top:10px;width:13px;height:13px;border-radius:50%;background:var(--paper);border:2px solid var(--gold)}
.yr{font:500 28px/1 var(--disp);color:var(--accent)}
.yp{display:block;width:100%;margin:12px 0 10px;border:1px solid var(--line);padding:6px;background:#fff}
.yp img{width:100%;aspect-ratio:4/3;object-fit:cover}
.yt{font-size:18px;line-height:1.75}
.yt b{display:block;font-size:20px}
.kl .paper{background:#fff;padding:26px 22px;box-shadow:0 8px 22px rgba(60,45,30,.1);background-image:linear-gradient(transparent 37px,rgba(150,130,100,.18) 38px);background-size:100% 38px;text-align:left}
.hand{font:400 26px/38px var(--pen);color:#2F3550}
.from{text-align:right;margin-top:10px}
.big{font:300 92px/1 var(--disp)}
.tm{font-size:19px;margin:8px 0 20px}
.tm small{display:block;font-size:16px;color:var(--sub)}
.cal td.on span{background:var(--gold)}
.dd{font-size:18px;margin:16px 0}.dd b{font:500 34px var(--disp);color:var(--accent)}
.place .map{height:250px}
.place .ways,.place .maplinks{text-align:left}
.gb{margin-top:34px;text-align:left}
.gb-head{display:flex;justify-content:space-between;align-items:center}
.gb-head h3{font-size:21px}
.heart{text-align:left}.heart .k{text-align:center}
.ft{text-align:center;padding:30px 24px 60px;background:#2A241F;color:#F4ECDD}
.ft-t{font-size:19px;margin:0 0 22px}
.sh{display:flex;gap:8px;justify-content:center}
.ft .btn-line{color:#F4ECDD}
/* 형압 70 시작 화면 */
.sv-intro{position:fixed;inset:0;z-index:70;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--paper);transition:opacity 1s,visibility 1s}
.sv-intro.gone{opacity:0;visibility:hidden}
.sv-card{position:relative;width:min(80vw,320px);aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center}
.ring{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.ring circle{fill:none;stroke:var(--gold);stroke-width:1.2;stroke-dasharray:580;stroke-dashoffset:580;transition:stroke-dashoffset 1.6s ease}
.sv-intro.open .ring circle{stroke-dashoffset:0}
.sv-n{font:300 150px/1 var(--disp);color:var(--paper);text-shadow:-2px -2px 1px #fff,2px 2px 3px rgba(80,60,30,.3)}
.sv-t{font-size:19px;line-height:1.6;text-align:center;margin-top:4px;opacity:.85}
.sv-btn{margin-top:30px;background:var(--fg);color:var(--paper);padding:16px 34px;font-size:19px;font-weight:700;transition:opacity .5s}
.sv-x{font-size:15px;color:var(--sub);margin-top:12px;transition:opacity .5s}
.sv-intro.open .sv-btn,.sv-intro.open .sv-x{opacity:0}
