:root{--navy:#172238;--violet:#673d95;--lavender:#e9ddf8;--paper:#faf7fe;--line:#d4cce0}
*{box-sizing:border-box}body{margin:0;color:var(--navy);background:var(--paper);font:17px/1.62 system-ui,sans-serif}
a{color:var(--violet);text-underline-offset:3px}h1,h2{line-height:1.13;margin:0 0 17px}h1{font-size:clamp(36px,6.6vw,74px)}h2{font-size:clamp(27px,4vw,42px)}
.wrap{width:min(1100px,calc(100% - 52px));margin-inline:auto}.masthead{border-bottom:1px solid var(--line);background:white}
.bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0}.brand{text-decoration:none;font-size:26px;font-weight:800;color:var(--navy)}.brand small{font-size:12px;color:var(--violet)}
.opening{display:grid;grid-template-columns:1.6fr 1fr;gap:29px;align-items:center;padding:clamp(28px,7vw,82px) 0 37px}
.opening p:not(.tag){max-width:680px;font-size:20px}.tag{margin:0 0 11px;color:var(--violet);font-size:13px;font-weight:750;letter-spacing:.045em}
.sample{background:var(--navy);color:white;border-radius:10px;padding:20px}.sample .tag{color:#dfc7f7}.sample p:last-child{margin:0;font-size:16px}
.guide{border-top:2px solid var(--line);padding:22px 0 39px;max-width:790px}
footer{border-top:1px solid var(--line);padding:14px 0;font-size:14px}.article-wrap{padding:30px 0 40px}
.bap-single-content{max-width:780px}.bap-single-content h1{font-size:clamp(34px,5.4vw,61px);overflow-wrap:anywhere}
.bap-single-content h2{margin-top:30px}.bap-single-content li{margin-bottom:6px}.lead{font-size:clamp(18px,2vw,22px)}
blockquote{margin:15px 0;padding:12px 15px;background:var(--lavender);border-left:3px solid var(--violet)}
@media(max-width:680px){.wrap{width:calc(100% - 34px)}.opening{grid-template-columns:minmax(0,1fr);gap:8px}.opening p:not(.tag){font-size:17px}}
