:root{--font-nav:"Cabin", sans-serif;--font-heading:"Montserrat", sans-serif;--font-title:"Nanum Myeongjo", serif;--font-script:"Playfair Display", serif;--font-body:"DM Sans", sans-serif;--color-text:#292929;--color-near-black:#282828;--color-white:#fff;--color-cream:#f6f1eb;--color-tan:#ece1d4;--color-warm:#d8ccbf;--color-teal:#2c5f5d;--color-teal-hover:#1e4240;--content-width:1200px;--breakpoint:768px}*{box-sizing:border-box}html{color:var(--color-text);font-family:var(--font-body);background:var(--color-white);scroll-behavior:smooth}body{margin:0;font-size:16px;line-height:1.8}img{max-width:100%;height:auto;display:block}a{color:inherit}.container{width:min(100% - 32px, var(--content-width));margin-inline:auto}.section{padding:64px 0}.section--cream{background:var(--color-cream)}.section--tan{background:var(--color-tan)}.eyebrow,.nav-label{font-family:var(--font-nav);text-transform:uppercase;letter-spacing:.1em;font-weight:700}h1,h2,h3{margin:0 0 20px;line-height:1.2}.title{font-family:var(--font-title);letter-spacing:.08em;text-transform:uppercase;font-size:clamp(2rem,5vw,3.3rem);font-weight:700}.heading{font-family:var(--font-heading);letter-spacing:.08em;text-transform:uppercase;font-size:clamp(1.6rem,4vw,2.3rem);font-weight:800}.script{font-family:var(--font-script);font-size:clamp(1.6rem,5vw,2.6rem);font-style:italic;font-weight:700}.button{background:var(--color-teal);min-height:44px;color:var(--color-white);cursor:pointer;font-family:var(--font-heading);letter-spacing:.05em;text-align:center;text-transform:uppercase;border:0;justify-content:center;align-items:center;padding:6px 18px;font-size:1rem;font-weight:800;line-height:1.2;text-decoration:none;transition:background-color .5s;display:inline-flex}.button:hover,.button:focus-visible{background:var(--color-teal-hover)}.button--secondary{border:2px solid var(--color-near-black);color:var(--color-warm);background:0 0}.button--secondary:hover,.button--secondary:focus-visible{color:#282828b3;background:0 0}.site-header{background:var(--color-white);display:none}.desktop-nav{grid-template-columns:1fr 170px 1fr;align-items:center;gap:28px;min-height:120px;display:grid}.nav-group{justify-content:center;align-items:center;gap:28px;display:flex}.desktop-nav a,.mobile-panel a,.footer-nav a{font-family:var(--font-nav);text-transform:uppercase;font-weight:700;text-decoration:none}.desktop-logo img{width:150px;margin-inline:auto}.mobile-header{background:var(--color-white);justify-content:space-between;align-items:center;min-height:60px;padding:8px 18px;display:flex}.mobile-header img{width:94px}.icon-button{width:44px;height:44px;color:var(--color-near-black);cursor:pointer;background:0 0;border:0;font-size:28px;line-height:1}.mobile-panel{z-index:30;background:var(--color-near-black);min-height:500px;color:var(--color-white);opacity:0;pointer-events:none;padding:12px 22px 36px;transition:opacity .5s,transform .5s;position:fixed;inset:0 0 auto;transform:translateY(-12px)}.mobile-panel.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.mobile-panel__top{justify-content:space-between;align-items:center;display:flex}.mobile-panel img{width:112px}.mobile-panel nav{text-align:center;gap:22px;margin-top:42px;display:grid}.hero{min-height:320px;color:var(--color-white);text-align:center;background-position:50%;background-size:cover;align-items:center;display:grid}.home-hero{min-height:480px}.hero__inner{width:min(100% - 32px, var(--content-width));text-shadow:0 2px 16px #00000080;margin-inline:auto}.home-hero .heading{font-size:clamp(1.4rem,5vw,3.4rem)}.home-hero .script{font-size:clamp(1.8rem,7vw,5.5rem)}.split{align-items:center;gap:32px;display:grid}.guide-cta{background:var(--color-cream)}.guide-cta__image{max-width:330px;margin-inline:auto}.testimonial{text-align:center}.testimonial blockquote{max-width:850px;margin:0 auto 22px;font-size:clamp(1rem,3vw,1.25rem)}.testimonial img{object-fit:cover;border-radius:50%;width:88px;height:88px;margin:0 auto 12px}.journey-grid,.post-grid,.marks-grid{gap:24px;display:grid}.journey-card,.post-card{background:var(--color-white)}.journey-card img,.post-card img{aspect-ratio:4/3;object-fit:cover;width:100%}.journey-card__body,.post-card__body{padding:22px}.post-card__meta{color:var(--color-teal);font-family:var(--font-nav);letter-spacing:.08em;text-transform:uppercase;font-size:.82rem;font-weight:700}.post-card h2,.post-card h3{font-family:var(--font-title);letter-spacing:.04em;font-size:1.45rem}.post-card a{text-decoration:none}.archive-header{background:var(--color-cream);text-align:center;padding:70px 0}.post-layout{align-items:start;gap:40px;display:grid}.post-content{font-size:1.05rem}.post-content figure{text-align:center;margin:32px auto}.post-content img{margin-inline:auto}.post-content h2,.post-content h3{font-family:var(--font-heading);letter-spacing:.05em;text-transform:uppercase}.post-sidebar{background:var(--color-cream);padding:24px}.page-content{max-width:900px;margin-inline:auto;font-size:1.05rem}.guide-form{gap:16px;max-width:520px;display:grid}.guide-form label{gap:6px;font-weight:700;display:grid}.guide-form input{min-height:46px;font:inherit;border:1px solid #28282840;padding:10px 12px}.form-status{color:#9f2a1d;min-height:28px}.confirmation[hidden],.form-view[hidden]{display:none}.site-footer{background:var(--color-near-black);color:var(--color-white)}.footer-main{text-align:center;padding:46px 0 28px}.footer-logo{width:130px;margin:0 auto 24px}.footer-nav{flex-wrap:wrap;justify-content:center;gap:18px 28px;display:flex}.footer-legal{background:var(--color-white);color:var(--color-text);text-align:center;padding:26px 0 36px}.footer-legal a{color:inherit}.marks-grid{grid-template-columns:repeat(2,minmax(0,120px));justify-content:center;align-items:center;margin-top:20px}.marks-grid img{object-fit:contain;max-height:70px;margin-inline:auto}@media (width>=768px){body{font-size:18px}.site-header{display:block}.mobile-header,.mobile-panel{display:none}.split{grid-template-columns:minmax(0,1fr) minmax(280px,.7fr)}.journey-grid,.post-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.post-layout{grid-template-columns:minmax(0,1fr) 300px}.marks-grid{grid-template-columns:repeat(5,minmax(0,120px))}}@media (width<=767px){.home-hero{min-height:200px}.hero{min-height:220px}.section{padding:46px 0}}
