
:root{
  --ink:#16211F; --paper:#F7F5F1; --vellum:#EFEAE2;
  --line:rgba(22,33,31,.14); --line-strong:rgba(22,33,31,.55); --line-d:rgba(244,241,234,.16);
  --brass:#A5814B; --brass-h:#8F6F3E; --brass-soft:#CBB287;
  --mut:#5C6864; --mut-d:rgba(244,241,234,.6);
  --serif:'Noto Serif KR','Apple SD Gothic Neo',serif;
  --sans:'Pretendard Variable',Pretendard,'Noto Sans KR',system-ui,sans-serif;
  --ease:cubic-bezier(.22,.61,.36,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);font-size:16px;line-height:1.65;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;word-break:keep-all;min-height:100svh;padding-bottom:env(safe-area-inset-bottom)}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none}
.wrap{max-width:1180px;margin:0 auto;padding:0 clamp(20px,5vw,48px)}
.rv{opacity:0;transform:translateY(16px);transition:opacity .9s ease,transform .9s var(--ease);transition-delay:var(--d,0s)}
.rv.on{opacity:1;transform:none}
[data-d="1"]{--d:.08s}[data-d="2"]{--d:.16s}[data-d="3"]{--d:.24s}[data-d="4"]{--d:.32s}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.rv{opacity:1;transform:none;transition:none}*{transition:none!important}}

.hd{position:fixed;inset:0 0 auto;z-index:100;background:rgba(247,245,241,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);--fg:var(--ink)}
.hd .wrap{display:flex;align-items:center;justify-content:space-between;height:72px}
.logo{display:flex;align-items:baseline;gap:12px;color:var(--fg)}
.logo strong{font-family:var(--serif);font-weight:700;font-size:19px;letter-spacing:.04em}
.logo em{font-style:normal;font-size:11.5px;letter-spacing:.26em;color:var(--brass);font-weight:600}
.gnb{display:flex;align-items:center;gap:30px}
.gnb a{font-size:14px;font-weight:500;color:var(--ink);opacity:.82;transition:color .4s ease,opacity .3s ease;position:relative}
.gnb a:hover{color:var(--brass);opacity:1}
.gnb a.cur{color:var(--brass);opacity:1}
.gnb a.cur::after{content:"";position:absolute;left:0;right:0;bottom:-22px;height:1px;background:var(--brass)}
.hd-tel{display:inline-flex;align-items:center;gap:9px;border:1px solid rgba(22,33,31,.3);color:var(--ink);padding:10px 18px;font-size:14px;font-weight:600;border-radius:2px;transition:border-color .4s,color .4s,background .4s,transform .5s var(--ease)}
.hd-tel:hover{border-color:var(--brass);color:var(--brass);transform:translateY(-2px)}
@media(max-width:900px){.gnb{display:none}}

.hero{position:relative;min-height:46svh;display:flex;align-items:flex-end;color:#F4F1EA;isolation:isolate;overflow:hidden}
.hero-bg{position:absolute;inset:0;z-index:-2;background:url('../media/343ba2c2872e5a38.jpg') 50% 50%/cover no-repeat;transform:scale(1.05)}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(112deg,rgba(9,15,14,.9) 8%,rgba(9,15,14,.55) 52%,rgba(9,15,14,.32)% 82%),linear-gradient(to bottom,rgba(9,15,14,.45),rgba(10,16,15,.85))}
.hero-in{width:100%;padding:160px 0 70px}
.kicker{display:flex;align-items:center;gap:14px;font-size:12.5px;font-weight:600;letter-spacing:.3em;color:var(--brass-soft)}
.kicker::before{content:"";width:36px;height:1px;background:var(--brass-soft)}
.hero h1{font-family:var(--serif);font-weight:600;font-size:clamp(2.2rem,5.4vw,3.7rem);line-height:1.2;letter-spacing:-.015em;margin:26px 0 18px}
.hero .sub{max-width:600px;color:var(--mut-d);font-size:clamp(15px,1.5vw,17px);line-height:1.78}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:16px 30px;font-size:15px;font-weight:600;letter-spacing:.01em;border-radius:2px;border:1px solid transparent;cursor:pointer;transition:transform .5s var(--ease),box-shadow .5s var(--ease),background .35s ease,border-color .35s ease,color .35s ease;font-family:inherit}
.btn.brass{background:var(--brass);color:#fff}.btn.brass:hover{background:var(--brass-h);transform:translateY(-3px);box-shadow:0 18px 38px rgba(8,12,11,.45)}
.btn.ink{background:var(--ink);color:#F4F1EA}.btn.ink:hover{background:#223230;transform:translateY(-3px);box-shadow:0 18px 38px rgba(8,12,11,.25)}
.btn.line-b{border-color:rgba(244,241,234,.45);color:#F4F1EA}.btn.line-b:hover{border-color:rgba(244,241,234,.95);background:rgba(255,255,255,.05);transform:translateY(-3px)}

.sec{padding:clamp(72px,9vw,120px) 0}
.sec-paper{background:var(--paper)}
.sec-vellum{background:var(--vellum)}
.sec-dark{background:var(--ink);color:#EDEAE2}
.sec-dark .h2{color:#F4F1EA}.sec-dark .lead{color:var(--mut-d)}
.sec-dark .eyebrow{color:var(--brass-soft)}.sec-dark .eyebrow::before{background:var(--brass-soft)}
.eyebrow{display:flex;align-items:center;gap:14px;font-size:12.5px;font-weight:700;letter-spacing:.3em;color:var(--brass)}
.eyebrow::before{content:"";width:36px;height:1px;background:var(--brass)}
.h2{font-family:var(--serif);font-weight:600;font-size:clamp(1.7rem,3.2vw,2.5rem);line-height:1.28;letter-spacing:-.01em;margin-top:20px}
.lead{margin-top:18px;color:var(--mut);max-width:600px}

/* calculator */
.calc{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(36px,5vw,80px);align-items:start;margin-top:56px}
.panel{background:#fff;border:1px solid var(--line);padding:36px 32px}
@media(max-width:900px){.calc{grid-template-columns:1fr}.panel{padding:28px 22px}}

.tabs{display:flex;gap:0;border-bottom:1px solid var(--line);margin-bottom:24px}
.tabs button{flex:1;background:transparent;border:0;padding:16px 12px 18px 12px;font-family:inherit;font-size:13.5px;font-weight:600;color:var(--mut);cursor:pointer;border-bottom:2px solid transparent;transition:color .3s ease,border-color .3s ease;letter-spacing:.04em}
.tabs button.on{color:var(--ink);border-bottom-color:var(--brass)}
.tabs button span{display:block;font-family:var(--serif);font-size:18px;color:var(--ink);margin-top:4px;font-weight:600}

.fi{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.f{display:block}
.f label{display:block;font-size:12.5px;letter-spacing:.04em;color:var(--ink);font-weight:600;margin-bottom:6px}
.f label em{color:var(--brass);font-style:normal;margin-right:3px}
.f input,.f select{width:100%;font-family:inherit;font-size:15px;color:var(--ink);background:#FBFAF6;border:1px solid var(--line);padding:13px 14px;border-radius:0;transition:border-color .3s ease,background .3s ease;outline:0}
.f input:focus,.f select:focus{border-color:var(--brass);background:#fff}
.f.full{grid-column:1 / -1}
.f .hint{display:block;font-size:12.5px;color:var(--mut);margin-top:6px}

@media(max-width:640px){.fi{grid-template-columns:1fr}}

.summary{margin-top:28px;border-top:1px solid var(--line)}
.srow{display:grid;grid-template-columns:1fr auto;align-items:baseline;padding:14px 0;border-bottom:1px solid var(--line)}
.srow b{font-weight:600;color:var(--ink);font-size:14.5px}
.srow .v{font-size:15px;color:var(--ink);font-variant-numeric:tabular-nums}
.srow.hi{border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);background:var(--vellum);padding:18px 16px;margin-bottom:14px;margin-top:10px}
.srow.hi .v{font-family:var(--serif);font-size:1.7rem;font-weight:600;color:var(--brass)}

.note{margin-top:18px;font-size:13px;color:var(--mut);line-height:1.78;padding:14px 16px;background:var(--vellum);border:1px solid var(--line)}
.note b{color:var(--ink)}

.sidebar{padding-top:18px}
.sidebar .card-aside{background:var(--vellum);padding:28px 26px;border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line)}
.sidebar .card-aside h3{font-family:var(--serif);font-weight:600;font-size:1.2rem;line-height:1.4}
.sidebar .card-aside p{margin-top:14px;color:var(--mut);font-size:14.5px}
.sidebar .card-aside ul{margin-top:18px}
.sidebar .card-aside li{display:flex;align-items:baseline;gap:10px;font-size:14px;color:var(--ink);padding:8px 0;border-bottom:1px solid var(--line)}
.sidebar .card-aside li:last-child{border-bottom:0}
.sidebar .card-aside li i{font-style:normal;font-family:var(--serif);color:var(--brass);font-size:14px}

.twocol{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,80px);margin-top:56px}
@media(max-width:900px){.twocol{grid-template-columns:1fr}}
.twocol table{width:100%;border-collapse:collapse;font-size:13.8px;margin-top:24px}
.twocol th,.twocol td{padding:13px 8px;border-bottom:1px solid var(--line);text-align:right;font-variant-numeric:tabular-nums}
.twocol th:first-child,.twocol td:first-child{text-align:left;font-weight:400;color:var(--mut)}
.twocol th{color:var(--ink);font-weight:600;font-family:var(--serif);font-size:14.5px;border-bottom-width:var(--line-strong)}
.twocol caption{font-size:13px;color:var(--mut);text-align:left;margin-bottom:14px}

.callout{margin-top:30px;padding:18px 20px;background:var(--ink);color:#EDEAE2;font-size:14px;line-height:1.8;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.callout b{font-family:var(--serif);font-weight:600;color:#F4F1EA;font-size:1.05rem}
.callout span{color:var(--mut-d)}

footer{background:#101917;color:rgba(244,241,234,.55);padding:54px 0 calc(112px + env(safe-area-inset-bottom))}
.ft{display:flex;flex-wrap:wrap;gap:18px 48px;justify-content:space-between;align-items:baseline}
.ft strong{font-family:var(--serif);color:#EDE9E0;font-size:16px;letter-spacing:.04em}
.ft p{font-size:13px;line-height:1.85}
.ft-note{margin-top:28px;padding-top:22px;border-top:1px solid rgba(244,241,234,.12);font-size:12px;line-height:1.85;color:rgba(244,241,234,.42)}
.ft-nav{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:18px;font-size:13px}
.ft-nav a:hover{color:var(--brass-soft)}

.mcta{position:fixed;left:0;right:0;bottom:0;z-index:90;display:none;background:rgba(247,245,241,.97);backdrop-filter:blur(14px);border-top:1px solid var(--line);padding:10px 12px calc(10px + env(safe-area-inset-bottom));gap:8px;box-shadow:0 -10px 30px rgba(10,16,15,.08)}
.mcta .btn{flex:1;padding:13px 6px;font-size:13px;white-space:nowrap}
.mcta .btn.brass{flex:1.3}
.mcta .btn.l2{border-color:var(--ink);color:var(--ink);background:transparent}
.mcta .btn.l2:hover{background:var(--ink);color:#F4F1EA;transform:none;box-shadow:none}
@media(max-width:760px){
  .mcta{display:flex}.hd-tel{display:none}.gnb{display:none}
}

/* Phoenix Project branding */
.logo.phoenix-logo{display:flex;align-items:center;line-height:1.4;min-width:0;flex-shrink:0;}
.logo.phoenix-logo strong{font-family:var(--sans);font-size:24px;font-weight:800;letter-spacing:-.025em;color:var(--brass);}
.logo.phoenix-logo .brand-by{font-size:15px;font-weight:500;letter-spacing:0;}
.logo.phoenix-logo .brand-project{color:var(--fg);font-size:16px;font-weight:700;letter-spacing:0;white-space:nowrap;}
.hd .gnb{gap:20px;}
@media(min-width:901px) and (max-width:1200px){.logo.phoenix-logo strong{font-size:21px;}.logo.phoenix-logo .brand-by{font-size:13px;}.logo.phoenix-logo .brand-project{font-size:14px;}.hd .gnb{gap:14px;}.hd .gnb a{font-size:12px;}}
@media(max-width:600px){.logo.phoenix-logo{flex-shrink:1;}.logo.phoenix-logo strong{font-size:19px;line-height:1.3;}.logo.phoenix-logo .brand-by{font-size:12px;}.logo.phoenix-logo .brand-project{font-size:13px;}.hd .wrap{gap:12px;height:auto;min-height:72px;padding-top:8px;padding-bottom:8px;}}
