:root{--ink:#1e2921;--moss:#315a3c;--moss-2:#467650;--cream:#f7f2e8;--paper:#fffdf8;--line:#d8d5c9;--rose:#b85f61;--muted:#667068;--shadow:0 20px 50px rgba(35,50,38,.09);--r:22px;--s1:.5rem;--s2:.875rem;--s3:1.25rem;--s4:2rem;--s5:3.5rem}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Pretendard,"Noto Sans KR",system-ui,sans-serif;line-height:1.55}button,input,select{font:inherit}a{color:inherit}.wrap{width:min(1080px,calc(100% - 32px));margin-inline:auto}.site-header{height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 max(16px,calc((100vw - 1080px)/2));border-bottom:1px solid rgba(49,90,60,.14);background:rgba(247,242,232,.9);backdrop-filter:blur(12px);position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:800}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--moss);color:#fff;font-family:serif}.trust-pill,.promise-row span,.setting{font-size:.78rem;padding:6px 10px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.55)}.hero{padding:var(--s5) 0 var(--s4);max-width:880px}.eyebrow{margin:0 0 8px;color:var(--moss-2);font-size:.76rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase}.hero h1{font-family:Georgia,"Noto Serif KR",serif;font-size:clamp(2.45rem,8vw,5.3rem);line-height:1.02;letter-spacing:-.055em;margin:0}.hero h1 em{color:var(--moss);font-style:normal}.hero-copy{font-size:clamp(1rem,2.4vw,1.3rem);max-width:680px;color:#4e5b51;margin:24px 0}.promise-row{display:flex;flex-wrap:wrap;gap:8px}.task-shell,.budget-section,.checklist-section{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:clamp(20px,5vw,48px);margin-bottom:var(--s5)}.section-heading{display:flex;gap:16px;align-items:flex-start;margin-bottom:28px}.section-heading>span{flex:0 0 34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--moss);color:#fff;font-weight:900}.section-heading h2{font-size:clamp(1.45rem,4vw,2.25rem);line-height:1.15;margin:0;letter-spacing:-.035em}.section-heading p:last-child{color:var(--muted);margin:.45rem 0 0}.field-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.field{display:grid;gap:8px;font-weight:750}.field>span:first-child,.toggle-group legend{font-size:.85rem;color:#475047}.field input,.field select,.more select{width:100%;height:52px;border:1px solid #b8beb6;border-radius:12px;background:#fff;padding:0 14px;color:var(--ink)}.field input:focus,.field select:focus,.more summary:focus-visible,.button:focus-visible,.checklist input:focus-visible{outline:3px solid rgba(49,90,60,.28);outline-offset:2px}.input-suffix{position:relative}.input-suffix b{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--muted)}.toggle-group{border:0;padding:0;margin:24px 0;display:grid;grid-template-columns:1fr 1fr;gap:12px}.toggle-group legend{margin-bottom:9px;font-weight:800}.toggle{display:flex;gap:12px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:14px;background:#fff;cursor:pointer}.toggle input{width:22px;height:22px;accent-color:var(--moss)}.toggle span{display:grid}.toggle small{font-size:.78rem;color:var(--muted);font-weight:450}.more{margin:0 0 24px;border-block:1px solid var(--line);padding:14px 0}.more summary{cursor:pointer;font-weight:800;padding:6px 2px}.more summary span{float:right;font-size:.75rem;color:var(--muted)}.more .field{margin-top:16px}.field small{font-weight:450;color:var(--muted)}.button{min-height:50px;border-radius:13px;border:0;padding:0 20px;font-weight:850;cursor:pointer;transition:.18s ease}.button:hover{transform:translateY(-1px)}.button--primary{width:100%;background:var(--moss);color:white;display:flex;justify-content:space-between;align-items:center}.button--secondary{background:var(--ink);color:#fff}.button--ghost{border:1px solid var(--moss);color:var(--moss);background:#fff}.source-inline{font-size:.76rem;color:var(--muted);margin:14px 0 0;text-align:center}.results-section{margin-bottom:var(--s5);scroll-margin-top:85px}.venue-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.venue-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:0 10px 30px rgba(35,50,38,.05)}.venue-card--top{border:2px solid var(--moss);box-shadow:var(--shadow)}.venue-card__head{display:flex;justify-content:space-between;gap:12px}.venue-card h3{margin:0;font-size:1.22rem}.reason-list{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0}.reason-list span{font-size:.76rem;padding:5px 8px;border-radius:7px;background:#edf3eb;color:#2f623d}.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.facts div{display:grid;gap:2px}.facts dt{font-size:.7rem;color:var(--muted)}.facts dd{margin:0;font-size:.84rem;font-weight:800}.venue-note{font-size:.84rem;color:var(--muted);min-height:2.6em}.card-actions{display:flex;gap:14px;align-items:center;justify-content:space-between;margin-top:20px}.text-link{color:var(--moss);font-weight:800;text-underline-offset:3px}.excluded-panel{margin-top:18px;background:rgba(255,255,255,.5);border:1px solid var(--line);border-radius:14px;padding:16px}.excluded-panel summary{cursor:pointer;font-weight:800}.excluded-panel ul{padding:0;margin:14px 0 0;list-style:none;display:grid;gap:10px}.excluded-panel li{display:grid;gap:2px;padding-top:10px;border-top:1px solid var(--line)}.excluded-panel span{font-size:.8rem;color:var(--muted)}.empty-state{grid-column:1/-1;padding:36px;text-align:center;background:#fff;border:1px dashed var(--line);border-radius:18px}.empty-state strong{font-family:Georgia,serif;font-size:3rem;color:var(--rose)}.budget-section{scroll-margin-top:85px}.budget-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:30px}.budget-summary{background:var(--moss);color:#fff;border-radius:18px;padding:26px;align-self:start;display:grid}.budget-summary p,.budget-summary span{margin:0;opacity:.78}.budget-summary>strong{font-family:Georgia,serif;font-size:clamp(2rem,5vw,3.4rem);letter-spacing:-.04em;margin:4px 0 24px}.budget-summary>b{font-size:1.1rem;margin-top:3px}.budget-summary small{margin-top:20px;opacity:.68}.budget-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.budget-form label{display:grid;grid-template-columns:1fr minmax(100px,140px) 24px;align-items:center;gap:8px;border-bottom:1px solid var(--line);padding:8px 0;font-size:.85rem}.budget-form input{text-align:right;height:40px;border:1px solid var(--line);border-radius:8px;padding:0 8px;min-width:0}.budget-form label b{font-size:.75rem;color:var(--muted)}.calculated{grid-column:1/-1;display:flex;justify-content:space-between;background:#edf3eb;padding:10px 12px;border-radius:8px;margin:0;font-size:.85rem}.checklist{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:22px}.checklist label{display:flex;gap:10px;align-items:flex-start;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fff;font-size:.88rem}.checklist input{width:20px;height:20px;flex:0 0 auto;accent-color:var(--moss)}.venue-specific{border-color:#d5a15f!important;background:#fff8e9!important}.copy-status{display:inline;margin-left:12px;font-size:.8rem;color:var(--muted)}.trust-section{display:grid;grid-template-columns:1fr 1.1fr;gap:40px;padding:0 0 var(--s5)}.trust-section h2{font-family:Georgia,"Noto Serif KR",serif;font-size:clamp(1.8rem,4vw,3rem);line-height:1.15;margin:0}.trust-copy{color:#4f5b52}.trust-copy p{margin:0 0 16px}footer{border-top:1px solid var(--line);padding:28px max(16px,calc((100vw - 1080px)/2));display:flex;justify-content:space-between;gap:16px;color:var(--muted);font-size:.75rem}footer p{margin:0}@media(max-width:760px){.trust-pill{display:none}.hero{padding-top:38px}.field-row,.venue-grid,.budget-layout,.trust-section{grid-template-columns:1fr}.toggle-group,.checklist,.budget-form{grid-template-columns:1fr}.budget-form .calculated{grid-column:1}.venue-note{min-height:0}.facts{grid-template-columns:1fr 1fr}.task-shell,.budget-section,.checklist-section{padding:22px 18px}.card-actions{align-items:stretch;flex-direction:column}.button--ghost{width:100%}.text-link{text-align:center}.copy-status{display:block;margin:10px 0 0}footer{flex-direction:column}}@media(max-width:360px){.wrap{width:min(100% - 20px,1080px)}.site-header{padding-inline:10px}.brand{font-size:.88rem}.hero h1{font-size:2.25rem}.facts{grid-template-columns:1fr}.budget-form label{grid-template-columns:1fr 98px 18px}.promise-row span{font-size:.68rem}}

