:root{--navy:#142c34;--navy-deep:#10242b;--cream:#f6f4ee;--paper:#fffefa;--gold:#d9b875;--gold-dark:#87612b;--ink:#25383e;--muted:#66736f;--line:#dcded5;--error:#a5322c;--success:#28624c;--crimson:#8B1538;--crimson-dark:#6e0f2b;--crimson-light:#a31d24;--crimson-glow:rgba(139,21,56,0.22);--crimson-soft:rgba(139,21,56,0.06);--sans:"Pretendard","Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:104px}body{margin:0;font-family:var(--sans);background:var(--paper);color:var(--ink);font-size:15px;line-height:1.75;word-break:keep-all;overflow-wrap:break-word}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3,h4{line-height:1.35;font-weight:700}button:disabled{cursor:not-allowed;opacity:.5}input:disabled,select:disabled,textarea:disabled{background:#f0f1ec;color:#6d7779}fieldset{min-width:0;border:0;padding:0;margin:0}legend{padding:0;margin-bottom:12px;font-weight:700;font-size:14px}input,select,textarea{width:100%;min-width:0;min-height:48px;border:1px solid #cdd2cb;border-radius:2px;padding:11px 13px;background:var(--paper);color:var(--ink);font-size:14px;line-height:1.6}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#84908c}select{padding-right:28px}input[type=checkbox],input[type=radio]{width:18px;height:18px;min-height:18px;accent-color:var(--navy);flex:0 0 18px;margin:0}input:focus,textarea:focus,select:focus{outline:2px solid var(--gold-dark);outline-offset:2px}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex="-1"]:focus-visible{outline:3px solid var(--gold-dark);outline-offset:5px}[hidden]{display:none!important}.wrap{max-width:1360px;padding:0 48px;margin:0 auto;width:100%}.section{padding-top:104px;padding-bottom:104px}.eyebrow{font-size:11px;letter-spacing:2.2px;font-weight:700;line-height:1.6;margin-bottom:19px}.eyebrow.muted{color:var(--gold-dark)}.fine-print{font-size:12px;line-height:1.85;color:var(--muted)}.required{font-size:10px;color:var(--gold-dark);font-weight:700;margin-left:4px;display:inline}.button{min-height:51px;padding:14px 22px;font-size:14px;font-weight:700;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:space-between;gap:25px;line-height:1.45;transition:background .2s,transform .2s}.button:hover{transform:translateY(-1px)}.button span[aria-hidden]{font-size:19px;font-weight:400}.button-gold{background:#8B1538;color:#fff;border-color:#8B1538;box-shadow:0 4px 14px rgba(139,21,56,0.25)}.button-gold:hover{background:#6e0f2b;border-color:#6e0f2b;transform:translateY(-1px);box-shadow:0 6px 18px rgba(139,21,56,0.35)}.button-navy{background:var(--navy);color:#fff}.button-navy:hover{background:#244650}.button-outline{border-color:#b9c1b8;background:transparent;color:var(--navy)}.button-outline:hover{background:var(--cream)}.full{width:100%}.text-link{display:inline-flex;gap:26px;align-items:center;font-size:14px;font-weight:600;border-bottom:1px solid #7b8b87;padding:8px 0}.text-link.light{color:#f5f1e8;border-color:#65716d}.small-button{padding:7px 10px;border:1px solid #c9d0c6;background:transparent;color:var(--ink);font-size:12px;line-height:1.5}.small-button:hover{background:var(--cream)}.tag{display:inline-block;padding:4px 8px;font-size:10px;font-weight:600;line-height:1.5;color:#63716d;border:1px solid #cdd4ca;white-space:nowrap}.check-list{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:10px}.check-list li{position:relative;padding-left:20px;font-size:13px;line-height:1.65}.check-list li:before{content:"✓";position:absolute;left:0;top:0;color:var(--gold-dark);font-weight:700}.plain-list{padding-left:18px;font-size:13px;line-height:1.75}.plain-list li{margin:7px 0}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:0;left:20px;z-index:100;background:var(--gold);color:var(--navy);padding:12px 20px;transform:translateY(-120%)}.skip-link:focus{transform:translateY(0)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:48px;margin-bottom:43px}.section-heading h2{font-size:34px;letter-spacing:-1.7px}.section-heading>p{color:var(--muted);font-size:14px;line-height:1.85;margin-bottom:3px}.section-heading.compact{margin-bottom:20px;align-items:center}.section-heading.compact h2{font-size:28px}.section-note{font-size:12px;color:var(--muted);margin-top:24px;line-height:1.9}
.site-header{position:sticky;top:0;z-index:30;background:rgba(255,254,250,.97);border-bottom:1px solid rgba(20,44,52,.08)}.header-inner{max-width:1360px;padding:0 48px;height:87px;margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;width:100%}.brand{justify-self:start;display:inline-flex;gap:12px;align-items:center;flex-shrink:0;text-decoration:none}.brand>span,.brand-text{display:inline-flex;flex-direction:column;width:max-content}.brand-title{display:block;font-size:18px;font-weight:700;letter-spacing:2.3px;line-height:1.1;margin-right:-2.3px}.brand small,.brand-sub{display:flex;justify-content:space-between;width:100%;font-size:10px;letter-spacing:normal;font-weight:600;margin-top:5px;color:var(--gold-dark);line-height:1}.brand small span,.brand-sub span{display:inline-block;line-height:1}.brand-symbol{color:var(--gold-dark);flex-shrink:0}#site-nav{justify-self:center;display:flex;align-items:center;gap:38px;font-size:14px;font-weight:600;white-space:nowrap}#site-nav>a:not(.nav-cta){position:relative;padding:6px 0}#site-nav>a:not(.nav-cta):after{content:"";position:absolute;bottom:0;left:0;right:100%;height:1px;background:var(--gold-dark);transition:right .2s}#site-nav>a:hover:after{right:0}.nav-cta{background:var(--navy);color:white;padding:12px 17px;display:flex;gap:18px}.header-right{justify-self:end;display:flex;align-items:center;gap:12px}.header-crm-badge{display:inline-flex;align-items:center;gap:7px;padding:7px 15px;font-size:12px;font-weight:700;letter-spacing:.3px;color:var(--navy);background:#fbf8f0;border:1px solid #dfd3ba;border-radius:9999px;text-decoration:none;white-space:nowrap;box-shadow:0 1px 3px rgba(20,44,52,.06);transition:all .2s ease}.header-crm-badge:hover{background:var(--navy);color:#fff;border-color:var(--navy);transform:translateY(-1px);box-shadow:0 4px 12px rgba(20,44,52,.15)}.header-crm-badge .badge-dot{width:7px;height:7px;border-radius:50%;background:#28624c;display:inline-block;transition:background .2s}.header-crm-badge:hover .badge-dot{background:var(--gold)}.menu-toggle{display:none}.hero{background:linear-gradient(180deg,#fbf8f0 0%,#fffefa 100%);border-bottom:1px solid var(--line);padding:48px 0 64px;color:var(--ink)}.hero-inner{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}.hero-copy{display:flex;flex-direction:column;justify-content:center}.hero-subtitle{font-size:12px;font-weight:700;letter-spacing:1.5px;color:var(--gold-dark);text-transform:uppercase;margin-bottom:14px;display:inline-block}.hero h1{font-size:clamp(32px,3.4vw,50px);letter-spacing:-2px;font-weight:700;line-height:1.32;color:var(--navy);margin-bottom:16px}.hero h1>span{color:var(--gold-dark)}.hero-lead{font-size:18px;font-weight:600;color:var(--ink);letter-spacing:-.6px;margin-bottom:12px}.hero-description{font-size:13.5px;color:var(--muted);line-height:1.85;margin-bottom:28px}.hero-actions{display:flex;align-items:center;gap:18px;margin-bottom:32px;flex-wrap:wrap}.hero-actions .button{padding:14px 22px;min-width:0;font-size:13.5px}.hero-sequence{display:flex;gap:12px;align-items:center;padding-top:20px;border-top:1px solid var(--line);font-size:11.5px;color:var(--muted);flex-wrap:wrap}.hero-sequence span{font-weight:600;color:var(--ink)}.hero-sequence i{font-style:normal;color:var(--gold-dark);font-weight:700}.hero-image{margin:0;position:relative;border-radius:12px;overflow:hidden;box-shadow:0 16px 36px rgba(20,44,52,.08);border:1px solid var(--line)}.hero-image img{width:100%;height:auto;display:block;object-fit:cover}.hero-image figcaption{padding:14px 18px;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);border-top:1px solid var(--line);color:var(--navy)}.hero-image figcaption>span{font-size:13.5px;font-weight:700;display:block;color:var(--navy);letter-spacing:-.3px}.hero-image figcaption small{font-size:11px;color:var(--muted);display:block;margin-top:4px;line-height:1.5}.mobile-break{display:none}.principle-strip{display:grid;grid-template-columns:repeat(3,1fr);padding-top:28px;padding-bottom:28px;border-bottom:1px solid var(--line);gap:30px}.principle-strip p{font-size:12px;color:#53635d}.principle-strip p>span{color:#a68750;letter-spacing:1px;margin-right:13px;font-size:11px}.principle-strip p+p{border-left:1px solid var(--line);padding-left:30px}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{padding:30px 27px 24px;border:1px solid var(--line);display:flex;flex-direction:column;background:var(--paper);transition:border-color .2s}.service-card:hover{border-color:#aaa994}.service-card.featured{background:#eeeee5;border-color:#dbddcc}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:31px}.card-number{font-family:Georgia,serif;font-size:28px;font-style:italic;color:#8a977f}.service-card h3{font-size:24px;letter-spacing:-1px;line-height:1.45;margin-bottom:19px}.service-card>p{font-size:13px;line-height:1.9;color:#647069}.service-card .check-list{padding:21px 0 26px;margin:0;flex:1}.service-card .check-list li{font-size:12px}.card-link{border-top:1px solid #d2d7cb;padding-top:17px;display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:700}.card-link span{font-size:18px;font-weight:400}.deliverables-section{background:var(--cream);padding:88px 0}.deliverables-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:95px;align-items:center}.deliverable-copy h2{font-size:35px;letter-spacing:-1.7px;line-height:1.45}.deliverable-copy>p:not(.eyebrow){font-size:13px;color:var(--muted);line-height:1.9;margin-top:23px}.deliverable-copy>p.fine-print{font-size:11px;margin-top:24px}.example-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.example-tabs button{border:1px solid #c8cec3;background:transparent;padding:9px 12px;font-size:12px;color:var(--ink)}.example-tabs button[aria-pressed=true]{background:var(--navy);color:white;border-color:var(--navy)}.sample-report{background:var(--paper);padding:33px 36px 30px;border:1px solid #d6dcce;box-shadow:12px 12px 0 #e7e9df}.report-top{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:22px}.report-top>span:first-child{font-size:10px;letter-spacing:1.3px;color:#6c7c74}.sample-report h3{font-size:24px;letter-spacing:-1.2px;line-height:1.5}.report-subtitle{font-size:11px;color:var(--muted);margin-top:11px}.report-rows{margin:21px 0 0}.report-rows>div{display:grid;grid-template-columns:80px 1fr;gap:12px;border-top:1px solid #e4e7df;padding:14px 0;font-size:12px;line-height:1.8}.report-rows dt{color:#808779}.report-rows dd{margin:0;color:#47584f}.report-next{display:grid;grid-template-columns:1fr auto;gap:3px 10px;background:#edf0e6;margin-top:13px;padding:17px 18px}.report-next>span:first-child{grid-column:1;font-size:10px;color:#727d6e}.report-next strong{grid-row:2;grid-column:1;font-size:12px;font-weight:600}.report-next>span:last-child{grid-column:2;grid-row:1/3;align-self:center;font-size:22px;color:#869275}.process-list{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;list-style:none;padding:0;margin:0}.process-list li{position:relative;border-top:1px solid #c8d1c3;padding-top:23px}.process-list li:before{content:"";position:absolute;width:6px;height:6px;background:#a18e5e;top:-3.5px;left:0}.process-list li>span{font-family:Georgia,serif;font-style:italic;font-size:22px;color:#8a977f}.process-list h3{font-size:16px;letter-spacing:-.5px;margin:19px 0 13px}.process-list p{font-size:12px;line-height:1.85;color:var(--muted)}.process-list small{display:block;margin-top:14px;font-size:10px;color:var(--gold-dark)}
.planner-section{background:linear-gradient(180deg,#fbf9f4 0%,#fffefa 100%);padding:88px 0 93px;color:var(--ink);border-top:1px solid #e5dcce;border-bottom:1px solid #e5dcce}.planner-section .eyebrow{color:var(--gold-dark)}.planner-section .section-heading>p{color:var(--muted)}.planner-grid{display:grid;grid-template-columns:1.06fr 1fr;gap:36px}.planner-form{padding:10px 0}.planner-form .required{color:var(--gold-dark)}.facility-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:26px}.facility-options label{border:1px solid #d2d7cb;padding:16px 14px;display:flex;align-items:center;gap:12px;cursor:pointer;background:#fff}.facility-options label:has(input:checked){border-color:var(--gold-dark);background:#fbf8f0}.facility-options input{accent-color:var(--gold-dark)}.facility-options strong{display:block;font-size:13px;color:var(--navy)}.facility-options small{display:block;font-size:10px;color:var(--muted);margin-top:5px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:block;font-size:12px;font-weight:600;line-height:1.65;margin-bottom:17px}.field input,.field select,.field textarea{margin-top:8px;font-weight:400}.form-grid .field{margin-bottom:0}.field small{display:block;font-size:10px;font-weight:400;color:var(--muted);line-height:1.7;margin-top:6px}.span-all{grid-column:1/-1}.planner-form input:not([type=radio]),.planner-form select{background:#fff;color:var(--ink);border:1px solid #cdd2cb;font-size:12px}.planner-form input::placeholder{color:#84908c}.planner-form .button{margin-top:27px}.planner-disclaimer{font-size:11px;line-height:1.8;color:var(--muted);margin-top:15px}.planner-result{color:var(--ink);background:var(--cream);padding:36px 36px 29px;min-height:426px;border:1px solid #d6dcce;display:flex;align-items:center;border-radius:10px}.planner-result>div{width:100%}.planner-result h3{font-size:24px;letter-spacing:-.9px;line-height:1.5}.outline-symbol{width:64px;height:64px;display:flex;align-items:center;justify-content:center;border:1px solid #b5bcac;border-radius:50%;font-size:30px;color:#869275;margin-bottom:28px}#plan-empty>p:not(.eyebrow){font-size:13px;color:var(--muted);margin-top:19px}.planner-result .eyebrow{color:var(--gold-dark);margin-bottom:10px}.result-promises{display:flex;gap:8px;margin-top:28px}.result-promises span{font-size:11px;border:1px solid #cfd4c9;padding:4px 9px;color:#6b786a}.result-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:19px}.planner-result .result-summary{font-size:11px;color:var(--muted);padding-bottom:17px;border-bottom:1px solid var(--line);margin-top:8px}.planner-result h4{font-size:12px;margin:18px 0 10px}.planner-result .check-list{margin-top:0;gap:7px}.planner-result .check-list li,.planner-result .plain-list{font-size:12px}.planner-result .plain-list{margin:0}.result-next{margin-top:20px;padding:17px 0;border-top:1px solid var(--line)}.result-next strong{font-size:12px}.result-next p{font-size:12px;color:#637065;line-height:1.8;margin-top:7px}.planner-result .fine-print{font-size:10px;margin-top:10px}
.funding-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}.budget-explanation{padding-top:16px}.budget-explanation h3{font-size:25px;letter-spacing:-1px;line-height:1.5}.budget-explanation>p{font-size:13px;color:var(--muted);margin-top:20px;line-height:1.9}.budget-explanation .check-list{margin-top:29px}.budget-explanation>p.fine-print{font-size:11px;padding-top:22px;border-top:1px solid var(--line);margin-top:26px}.calculator{border:1px solid var(--line);padding:28px 30px 0;background:var(--paper)}.calc-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px;gap:10px}.calc-title h3{font-size:17px;letter-spacing:-.5px}.calc-title>span{font-size:10px;color:var(--muted)}.calculator .field{font-size:11px}.calculator .button{margin-top:22px;font-size:12px;min-height:45px}.cash-output{margin:24px -30px 0;padding:24px 30px 23px;background:#edf0e6;border-top:1px solid var(--line)}.cash-output>p:first-child{font-size:11px;color:#65755f}.cash-output>strong{font-family:Georgia,serif;font-weight:400;font-size:40px;letter-spacing:-1px;color:var(--navy);display:block;line-height:1.4}.cash-output>strong>span{font-family:var(--sans);font-size:14px;font-weight:600;letter-spacing:0;margin-left:8px}.cash-output>p:not(:first-child){font-size:11px;margin-top:9px;color:#53644b}.cash-output>small{display:block;font-size:10px;color:#697960;line-height:1.7;margin-top:10px}.notice-section{padding:57px 0;background:var(--cream);border-block:1px solid #e1e3d8}.notice-intro{font-size:12px;color:var(--muted);margin-bottom:26px}.notice-list{display:grid;gap:12px}.empty-notice{border:1px solid #d9ddd1;padding:27px 30px;font-size:13px;line-height:1.9;color:#6c7869;background:var(--paper)}.notice-item{display:grid;grid-template-columns:95px 1fr auto;align-items:start;gap:18px;border:1px solid #d6dccf;background:var(--paper);padding:21px 24px}.notice-item .notice-status{font-size:11px;padding:4px 8px;border:1px solid #c4cdbb;text-align:center;line-height:1.5;color:#547148}.notice-item .notice-status.closed{color:#777d72;background:#eeefe9}.notice-item .notice-status.unknown{color:#84693c;border-color:#ddd0b5}.notice-item h3{font-size:15px;margin-bottom:6px;line-height:1.6}.notice-item p{font-size:12px;color:#63715e;line-height:1.8}.notice-item .notice-meta{font-size:10px;margin-top:10px;color:#7f8779}.notice-source{font-size:11px;text-decoration:underline;text-underline-offset:4px;white-space:nowrap;padding-top:6px}.notice-source:hover{color:var(--gold-dark)}
.inquiry-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:78px}.inquiry-copy{padding-top:18px}.inquiry-copy h2{font-size:32px;letter-spacing:-1.7px;line-height:1.5}.inquiry-copy>p:not(.eyebrow){margin-top:23px;color:var(--muted);font-size:13px;line-height:1.95}.inquiry-guide{display:flex;gap:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0;margin-top:37px}.inquiry-guide>span{color:#9c9f81;font-size:23px}.inquiry-guide p{font-size:12px;color:var(--muted);line-height:1.85}.inquiry-guide strong{display:block;font-size:12px;color:var(--ink);margin-bottom:8px}.inquiry-copy>p.fine-print{font-size:11px}.direct-contact{margin-top:26px;display:grid;gap:7px;font-size:12px}.direct-contact a{text-decoration:underline;text-underline-offset:4px}.inquiry-panel{padding:31px;border:1px solid var(--line);background:#fbfbf6}.inquiry-panel .form-grid{gap:17px}.inquiry-panel fieldset>.field{margin-top:19px}.inline-message{background:#eeeee2;padding:14px 15px;font-size:12px;color:#686950;margin-bottom:20px;border-left:2px solid #ad965f;line-height:1.8}.inline-message.error{color:#843f37;background:#f6eae5;border-left-color:#a96052}.inquiry-summary{font-size:11px;color:#617063;margin-bottom:24px;padding-bottom:18px;border-bottom:1px solid var(--line);line-height:1.8}.privacy-details{font-size:11px;background:#f0f1e9;border:1px solid #dce0d3;padding:0 15px;margin-top:22px}.privacy-details summary{display:flex;align-items:center;justify-content:space-between;padding:12px 0;font-weight:600;cursor:pointer;list-style:none;gap:10px}.privacy-details summary::-webkit-details-marker{display:none}.privacy-details[open] summary{border-bottom:1px solid #d7ddce}.privacy-details dl{margin:13px 0}.privacy-details dl>div{display:grid;grid-template-columns:85px 1fr;gap:10px;margin:8px 0}.privacy-details dt{color:#717b66}.privacy-details dd{margin:0}.privacy-details>p{padding-bottom:15px;color:#707b64;line-height:1.8;font-size:10px}.consent-label{display:flex;gap:10px;align-items:flex-start;margin:17px 0 21px;cursor:pointer;line-height:1.65;font-size:11px}.consent-label input{margin-top:2px}.consent-label strong{color:var(--gold-dark);font-size:10px}.inquiry-panel .fine-print{font-size:10px;margin-top:10px}.form-feedback:not(:empty){padding:15px 0 0;font-size:12px;line-height:1.8;color:var(--error)}.form-feedback strong{display:block;font-size:13px;margin-bottom:6px}.form-feedback ul{margin:9px 0;padding-left:20px}.success-panel{padding:12px 0 18px;text-align:center}.success-icon{display:flex;align-items:center;justify-content:center;border:1px solid #91ab88;color:#557e4d;font-size:27px;width:68px;height:68px;border-radius:50%;margin:0 auto 27px}.success-panel h3{font-size:24px;letter-spacing:-1px}.success-panel>p:not(.eyebrow){font-size:13px;color:var(--muted);margin-top:18px}.success-panel>strong{display:block;font-size:20px;color:var(--navy);font-weight:600;padding:20px 10px;background:#edf1e6;margin:22px 0;letter-spacing:1px;overflow-wrap:anywhere}.success-panel .button{margin-top:23px;font-size:12px}.honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;min-height:0!important;opacity:0;pointer-events:none}.faq-section{display:grid;grid-template-columns:.55fr 1fr;gap:70px;padding-bottom:104px;padding-top:6px}.faq-section h2{font-size:27px;letter-spacing:-1.2px;line-height:1.5}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}.faq-list summary{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px 0;cursor:pointer;font-size:13px;font-weight:600;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{color:#849176;font-size:18px}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list details>p{font-size:12px;line-height:1.9;color:var(--muted);padding:0 30px 22px 0}.site-footer{background:var(--navy-deep);color:#d9e1de;padding:53px 0 28px}.footer-top{display:flex;align-items:flex-start;justify-content:space-between;gap:35px;padding-bottom:38px}.footer-top .brand-symbol{color:#c6ad75}.footer-top .brand{color:#eef0e8}.footer-top .brand small,.footer-top .brand-sub{color:#c6ad75;font-weight:600;margin-top:5px}.footer-top>p{font-size:20px;line-height:1.65;letter-spacing:-.7px;color:#bccbc6;margin-right:auto;margin-left:75px}.footer-top .text-link{font-size:12px;margin-top:3px}.footer-meta{border-top:1px solid #334a4d;padding-top:24px;display:flex;justify-content:space-between;gap:25px;font-size:10px;color:#9cb2b0;line-height:1.8}.footer-meta>div{display:flex;gap:22px;flex-shrink:0}.copyright{font-size:9px;color:#77918d;letter-spacing:.6px;margin-top:20px}.noscript-note{position:fixed;bottom:0;left:0;right:0;z-index:99;padding:15px 25px;background:#fff0d8;color:#6e4825;font-size:13px;text-align:center;border-top:1px solid #b28f56}
@media(min-width:1550px){.hero-copy{padding-left:120px}.hero{min-height:690px}}
@media(max-width:1150px){.wrap{padding-left:34px;padding-right:34px}.header-inner{padding-left:34px;padding-right:34px}.header-right{gap:14px}.header-crm-badge{padding:6px 13px;font-size:11px}#site-nav{gap:21px;font-size:12px}.hero-copy{padding:60px 34px}.hero{min-height:588px;grid-template-columns:1.12fr 1fr}.hero h1{font-size:38px;letter-spacing:-2px}.hero-lead{font-size:16px}.hero-description{font-size:12px}.hero-actions{gap:18px}.hero-actions .button{min-width:0;font-size:12px;gap:20px}.hero-actions .text-link{font-size:12px;gap:12px}.hero-sequence{gap:11px}.hero-image{min-height:530px}.hero-image figcaption{left:24px}.hero-image figcaption>span{font-size:14px}.section-heading{gap:25px}.section-heading h2{font-size:30px}.section-heading>p{font-size:12px}.service-grid{gap:15px}.service-card{padding:25px 22px 22px}.service-card h3{font-size:21px}.service-card>p{font-size:12px}.service-card .check-list li{font-size:11px}.card-top{gap:8px}.card-top .tag{font-size:9px;padding:3px 5px}.card-link{font-size:11px}.deliverables-grid{gap:48px}.deliverable-copy h2{font-size:31px}.sample-report{padding:28px}.process-list{gap:23px}.process-list h3{font-size:14px}.planner-grid{gap:26px}.planner-result{padding:27px}.facility-options{gap:8px}.facility-options label{padding:13px 10px;gap:8px}.facility-options strong{font-size:12px}.facility-options small{font-size:9px}.form-grid{gap:15px}.funding-grid{gap:43px}.inquiry-grid{gap:43px}.inquiry-panel{padding:25px}.inquiry-copy h2{font-size:28px}.footer-top>p{margin-left:30px;font-size:17px}.principle-strip{gap:15px}.principle-strip p{font-size:11px}.principle-strip p+p{padding-left:20px}.principle-strip p>span{margin-right:8px}}
@media(max-width:850px){html{scroll-padding-top:90px}.header-inner{height:76px;display:flex;justify-content:space-between;align-items:center}.header-right{gap:10px}.header-crm-badge{padding:5px 11px;font-size:11px;gap:5px}.header-crm-badge .badge-dot{width:6px;height:6px}.brand>span,.brand-text{font-size:16px}.brand-title{font-size:16px;letter-spacing:2.0px;margin-right:-2.0px}.brand small,.brand-sub{font-size:9.5px;letter-spacing:normal;margin-top:4px}.brand-symbol{width:29px}.menu-toggle{display:flex;align-items:center;gap:12px;border:0;background:none;color:var(--navy);font-size:11px;padding:10px 0 10px 10px}.menu-lines{width:22px;height:14px;display:block;border-top:1px solid var(--navy);border-bottom:1px solid var(--navy);position:relative}.menu-lines:after{content:"";position:absolute;left:0;right:0;top:6px;height:1px;background:var(--navy)}#site-nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--paper);padding:20px 34px 26px;border-bottom:1px solid var(--line);align-items:stretch;gap:15px;box-shadow:0 12px 20px #142c3410}#site-nav.is-open{display:flex;flex-direction:column}#site-nav .nav-cta{justify-content:space-between;margin-top:7px}.hero{grid-template-columns:1.12fr 1fr;min-height:510px}.hero-copy{padding:46px 28px}.hero h1{font-size:31px;letter-spacing:-1.8px}.hero-copy .eyebrow{font-size:10px;gap:8px;letter-spacing:0}.hero-lead{font-size:14px;margin-top:22px}.hero-description{font-size:11px}.hero-actions{flex-direction:column;align-items:flex-start;gap:12px;margin-top:25px}.hero-actions .button{min-width:210px}.hero-actions .text-link{gap:28px;font-size:11px}.hero-note{font-size:9px}.hero-sequence{font-size:9px;margin-top:23px;padding-top:15px;gap:8px}.hero-image{min-height:510px}.hero-image figcaption{bottom:24px;left:20px;right:16px}.hero-image figcaption>span{font-size:12px}.hero-image figcaption small{font-size:9px}.section{padding-top:75px;padding-bottom:75px}.section-heading{align-items:flex-start;gap:22px;margin-bottom:32px}.section-heading h2{font-size:28px}.section-heading>p{font-size:11px;padding-top:38px}.service-grid{grid-template-columns:1fr;gap:17px}.service-card{position:relative;padding:25px 27px;display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.card-top{grid-column:1/-1;margin-bottom:16px;max-width:100%}.service-card h3{grid-column:1;grid-row:2;font-size:24px}.service-card>p{grid-column:1;grid-row:3;max-width:310px}.service-card .check-list{grid-column:2;grid-row:2/4;padding:8px 0 18px;gap:13px;align-content:start}.service-card .check-list li{font-size:12px}.card-link{grid-column:1/-1;margin-top:15px}.deliverables-section{padding:65px 0}.deliverables-grid{gap:28px;grid-template-columns:.9fr 1.1fr}.deliverable-copy h2{font-size:27px}.deliverable-copy>p:not(.eyebrow){font-size:11px}.example-tabs{gap:6px}.example-tabs button{font-size:10px;padding:8px}.sample-report{padding:22px}.sample-report h3{font-size:21px}.report-top>span:first-child{font-size:8px;letter-spacing:.6px}.report-rows>div{font-size:11px;grid-template-columns:66px 1fr;gap:8px}.report-next strong{font-size:11px}.process-list{grid-template-columns:1fr 1fr;gap:30px}.process-list h3{font-size:16px}.planner-section{padding:65px 0}.planner-grid{grid-template-columns:1fr;gap:24px}.planner-form .form-grid{gap:18px}.facility-options strong{font-size:14px}.facility-options small{font-size:11px}.facility-options label{padding:17px 14px}.planner-result{min-height:310px;padding:32px}.result-promises{margin-top:23px}.outline-symbol{float:right;margin:0;width:55px;height:55px}.funding-grid{gap:30px;grid-template-columns:.9fr 1.1fr}.calculator{padding:23px 21px 0}.calculator .form-grid{grid-template-columns:1fr;gap:14px}.cash-output{margin-left:-21px;margin-right:-21px;padding-left:21px;padding-right:21px}.budget-explanation h3{font-size:22px}.budget-explanation>p{font-size:12px}.budget-explanation .check-list li{font-size:11px}.calc-title{align-items:flex-start}.calc-title h3{font-size:15px}.calc-title span{font-size:9px;white-space:nowrap}.section-heading.compact h2{font-size:25px}.notice-item{grid-template-columns:80px 1fr}.notice-source{grid-column:2;font-size:10px;padding-top:0}.inquiry-grid{grid-template-columns:1fr;gap:32px}.inquiry-copy{padding:0}.inquiry-copy h2{font-size:30px}.inquiry-guide{margin-top:23px;max-width:460px}.inquiry-copy>p.fine-print{max-width:550px}.inquiry-panel{padding:30px}.faq-section{grid-template-columns:.7fr 1.3fr;gap:32px;padding-bottom:75px}.faq-section h2{font-size:25px}.faq-list summary{font-size:12px}.footer-top>p{font-size:14px;margin-left:10px}.footer-top .text-link{font-size:11px}.footer-meta{flex-direction:column;gap:12px}.principle-strip{gap:0;padding-top:22px;padding-bottom:22px}.principle-strip p{font-size:10px;line-height:1.8}.principle-strip p>span{display:block;margin:0 0 4px}.principle-strip p+p{padding-left:20px}}
@media(max-width:600px){html{scroll-padding-top:83px}.wrap{padding-left:23px;padding-right:23px}.header-inner{height:70px;padding:0 23px;display:flex;justify-content:space-between;align-items:center}.brand{gap:9px}.brand>span,.brand-text{font-size:15px}.brand-title{font-size:15px;letter-spacing:1.6px;margin-right:-1.6px}.brand small,.brand-sub{font-size:8.5px;letter-spacing:normal;margin-top:4px}.brand-symbol{width:27px;height:33px}#site-nav{top:70px;padding-left:23px;padding-right:23px}.hero{grid-template-columns:1fr}.hero-copy{padding:46px 25px 28px}.hero h1{font-size:37px;line-height:1.4;letter-spacing:-2px;white-space:normal}.hero-copy .eyebrow{font-size:10px;letter-spacing:.4px;margin-bottom:19px}.hero-lead{font-size:16px;margin-top:23px}.hero-description{font-size:12px;margin-top:13px}.hero-actions{flex-direction:row;align-items:center;gap:25px;margin-top:26px}.hero-actions .button{min-width:0;font-size:12px;padding:14px 16px;gap:20px}.hero-actions .text-link{font-size:12px;gap:14px}.hero-note{font-size:10px;margin-top:12px}.hero-sequence{font-size:10px;gap:14px;margin-top:29px;padding-top:19px}.hero-image{min-height:310px;height:310px}.hero-image img{object-position:50% 50%}.hero-image figcaption{left:25px;bottom:22px}.hero-image figcaption>span{font-size:15px}.hero-image figcaption small{font-size:9px}.hero-image:after{inset:45% 0 0}.principle-strip{padding-top:20px;padding-bottom:20px;gap:12px}.principle-strip p{font-size:9px;line-height:1.85}.principle-strip p>span{font-size:10px}.principle-strip p+p{padding-left:12px}.section{padding-top:64px;padding-bottom:64px}.eyebrow{font-size:9px;letter-spacing:1.8px;margin-bottom:13px}.section-heading{flex-direction:column;gap:17px;margin-bottom:28px}.section-heading h2{font-size:28px;line-height:1.45;letter-spacing:-1.5px}.section-heading>p{padding-top:0;font-size:12px}.section-heading>p br{display:none}.service-card{display:flex;padding:26px 25px}.card-top{margin-bottom:22px}.card-top .tag{font-size:10px;padding:4px 7px}.service-card h3{font-size:25px;margin-bottom:17px}.service-card>p{font-size:13px;max-width:none}.service-card .check-list{gap:9px;padding:20px 0}.service-card .check-list li{font-size:12px}.card-link{margin-top:0;font-size:12px}.section-note{font-size:11px;line-height:1.9}.deliverables-section{padding:61px 0 65px}.deliverables-grid{grid-template-columns:1fr;gap:32px}.deliverable-copy h2{font-size:29px;line-height:1.45}.deliverable-copy>p:not(.eyebrow){font-size:12px;margin-top:18px}.example-tabs{margin-top:22px;gap:8px}.example-tabs button{font-size:11px;padding:9px 13px}.deliverable-copy>p.fine-print{font-size:10px;margin-top:15px}.sample-report{padding:26px 23px;box-shadow:7px 7px 0 #e7e9df}.report-top>span:first-child{font-size:9px}.sample-report h3{font-size:23px}.report-rows>div{font-size:11px;grid-template-columns:70px 1fr}.report-subtitle{font-size:10px}.process-list{gap:29px 20px}.process-list h3{font-size:14px;margin-top:13px;margin-bottom:12px}.process-list p{font-size:11px;line-height:1.8}.process-list small{font-size:9px;margin-top:12px;line-height:1.7}.process-list li{padding-top:18px}.planner-section{padding:61px 0 63px}.planner-section .section-heading h2{font-size:29px}.planner-form{padding-top:0}.facility-options{gap:9px;margin-bottom:22px}.facility-options label{padding:14px 10px;gap:8px}.facility-options strong{font-size:12px}.facility-options small{font-size:9px}.form-grid{gap:16px 12px}.planner-form .form-grid{gap:17px 12px}.field{font-size:11px}.required{font-size:9px;margin-left:2px}input,select,textarea{font-size:16px;min-height:47px;padding:10px}.planner-form input:not([type=radio]),.planner-form select{font-size:13px}.planner-form select{padding-left:8px}.planner-form .button{font-size:12px;margin-top:25px}.planner-disclaimer{font-size:10px}.planner-result{padding:27px 22px;min-height:300px}.planner-result h3{font-size:24px}.result-promises{gap:6px}.result-promises span{font-size:10px}.outline-symbol{width:42px;height:42px;font-size:24px}.planner-result .eyebrow{font-size:9px}.result-heading .tag{font-size:9px}.result-next p{font-size:11px}.planner-result .button{font-size:12px}.funding-grid{grid-template-columns:1fr;gap:30px}.budget-explanation{padding:0}.budget-explanation h3{font-size:23px}.budget-explanation .check-list{margin-top:20px;gap:8px}.budget-explanation .check-list li{font-size:12px}.budget-explanation>p.fine-print{font-size:10px;margin-top:22px;padding-top:18px}.calculator{padding:25px 22px 0}.calculator .form-grid{grid-template-columns:1fr 1fr;gap:18px 12px}.calc-title{align-items:center;margin-bottom:23px}.calc-title h3{font-size:17px}.calc-title span{font-size:10px}.calculator .field{font-size:11px}.calculator .field input{font-size:16px}.calculator .field small{font-size:9px}.cash-output{margin-left:-22px;margin-right:-22px;padding-left:22px;padding-right:22px}.cash-output>strong{font-size:38px}.cash-output>p:first-child{font-size:10px}.cash-output>p:not(:first-child){font-size:10px}.cash-output>small{font-size:9px}.notice-section{padding:42px 0}.section-heading.compact{flex-direction:row;align-items:flex-end;gap:12px}.section-heading.compact h2{font-size:23px;line-height:1.5}.section-heading.compact .small-button{font-size:10px;white-space:nowrap;padding:7px}.notice-intro{font-size:11px;margin-bottom:22px}.empty-notice{padding:22px 20px;font-size:12px}.notice-item{grid-template-columns:1fr;gap:10px;padding:20px}.notice-item .notice-status{justify-self:start;font-size:10px}.notice-item h3{font-size:14px}.notice-source{grid-column:1}.notice-item p{font-size:11px}.notice-item .notice-meta{font-size:9px}.inquiry-copy h2{font-size:29px}.inquiry-copy>p:not(.eyebrow){font-size:12px;margin-top:19px}.inquiry-guide{padding:20px 0;margin-top:25px}.inquiry-guide p{font-size:11px}.inquiry-copy>p.fine-print{font-size:10px}.inquiry-panel{padding:24px 19px}.inquiry-panel .form-grid{gap:16px 12px}.inquiry-panel select{font-size:13px}.inquiry-panel input{font-size:15px}.inquiry-panel textarea{font-size:14px}.inline-message{font-size:11px;padding:12px}.inquiry-summary{font-size:10px;margin-bottom:22px}.privacy-details{padding:0 12px;font-size:10px}.privacy-details dl>div{grid-template-columns:65px 1fr;gap:8px}.privacy-details>p{font-size:9px}.consent-label{font-size:10px;gap:9px}.inquiry-panel .button{font-size:12px}.inquiry-panel .fine-print{font-size:9px}.success-panel h3{font-size:23px}.success-panel>p:not(.eyebrow){font-size:12px}.success-panel>strong{font-size:17px;letter-spacing:.4px}.faq-section{padding-top:0;padding-bottom:64px;grid-template-columns:1fr;gap:25px}.faq-section h2{font-size:26px}.faq-section h2 br{display:none}.faq-list summary{font-size:12px;padding:19px 0}.faq-list details>p{font-size:11px;padding-right:10px}.site-footer{padding-top:40px}.footer-top{flex-wrap:wrap;gap:24px;padding-bottom:30px}.footer-top>p{margin:0 0 0 auto;font-size:12px;letter-spacing:-.3px}.footer-top .text-link{margin:0;font-size:11px}.footer-meta{font-size:9px;gap:16px;padding-top:22px}.footer-meta>div{gap:19px}.copyright{font-size:8px;margin-top:19px}.noscript-note{padding:12px 17px;font-size:11px}}
@media(max-width:370px){.hero h1{font-size:32px}.hero-actions{gap:16px}.hero-actions .button{font-size:11px;gap:10px}.hero-actions .text-link{font-size:11px}.hero-sequence{gap:10px}.facility-options label{gap:6px}.facility-options strong{font-size:11px}.facility-options small{font-size:8px}.form-grid{grid-template-columns:1fr}.inquiry-panel .form-grid{grid-template-columns:1fr}.planner-form .form-grid{grid-template-columns:1fr}.calculator .form-grid{grid-template-columns:1fr}.section-heading.compact{flex-direction:column;align-items:flex-start}.footer-top>p{margin-left:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.button:hover{transform:none}}
@media print{body{background:white;color:#111;font-size:12px}.site-header,.hero,.principle-strip,#services,#deliverables,#process,#funding,#notices,#inquiry,.faq-section,.site-footer,.noscript-note{display:none!important}.planner-section{background:white;color:#111;padding:0}.planner-section .section-heading,.planner-form,.planner-result .button,.planner-result .small-button,.planner-result .fine-print{display:none!important}.planner-grid{display:block}.wrap{max-width:none;padding:0}.planner-result{display:block;border:1px solid #bbb;background:white;padding:25px;min-height:0}.planner-result h3{font-size:22px}.planner-result .tag{color:#333}#plan-empty{display:block}#plan-answer[hidden]{display:none!important}}

/* Interactive Tag & Report-Next Button */
.tag.tag-clickable{background:var(--navy);color:#fff;border-color:var(--navy);cursor:pointer;padding:5px 10px;font-size:11px;border-radius:3px;transition:all .2s ease}
.tag.tag-clickable:hover{background:var(--gold);color:var(--navy-deep);border-color:var(--gold);transform:translateY(-1px)}
.report-next{cursor:pointer;transition:all .2s ease;user-select:none}
.report-next:hover{background:#e2e7d7;transform:translateY(-1px);box-shadow:0 4px 12px rgba(20,44,52,.08)}
.report-next:focus-visible{outline:2px solid var(--gold-dark);outline-offset:2px}

/* Notice Archive Badge */
.archive-badge{display:inline-block;font-size:11px;font-weight:700;color:#554477;background:#f1edfa;border:1px solid #d5cbef;padding:4px 10px;border-radius:4px;margin-bottom:8px}

/* Public Modals (Glassmorphism & Clean Typography) */
dialog.public-modal{border:none;border-radius:10px;padding:0;max-width:820px;width:92%;box-shadow:0 25px 50px -12px rgba(16,36,43,.35);background:var(--paper);color:var(--ink);overflow:hidden}
dialog.public-modal::backdrop{background:rgba(16,36,43,.65);backdrop-filter:blur(4px)}
.modal-dialog-content{display:flex;flex-direction:column;max-height:85vh}
.modal-header{padding:24px 30px;background:#fbfbf8;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
.modal-tag{display:inline-block;font-size:10px;font-weight:700;letter-spacing:1.2px;color:var(--gold-dark);background:#fbf8f0;border:1px solid #dfd3ba;padding:3px 8px;border-radius:3px;margin-bottom:6px}
.modal-header h3{font-size:20px;letter-spacing:-.5px;color:var(--navy);margin-bottom:4px}
.modal-subtitle{font-size:12px;color:var(--muted)}
.modal-close-btn{background:none;border:1px solid #c8cec3;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;color:var(--ink);cursor:pointer;transition:all .2s;flex-shrink:0}
.modal-close-btn:hover{background:var(--cream);border-color:var(--ink)}
.modal-body{padding:24px 30px;overflow-y:auto;font-size:13px;line-height:1.75}
.modal-footer{padding:18px 30px;background:#f7f6f1;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:12px}

/* Diagnosis Sections Grid */
.diagnosis-summary-box{background:#f4f6ee;border-left:3px solid var(--gold-dark);padding:14px 18px;border-radius:4px;margin-bottom:22px}
.diagnosis-summary-box strong{display:block;font-size:12px;color:var(--navy);margin-bottom:4px}
.diagnosis-summary-box p{font-size:11.5px;color:#4b5a53;line-height:1.7}
.diagnosis-sections-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.diagnosis-card{border:1px solid var(--line);padding:16px 18px;border-radius:6px;background:#fff;display:flex;flex-direction:column}
.diagnosis-card.span-all{grid-column:1/-1;background:#fafaf5}
.diagnosis-card .card-num{font-family:Georgia,serif;font-size:20px;font-style:italic;color:var(--gold-dark);margin-bottom:6px}
.diagnosis-card h4{font-size:14px;color:var(--navy);letter-spacing:-.3px;margin-bottom:10px}
.diagnosis-card .check-list{margin-top:0;gap:6px}
.diagnosis-card .check-list li{font-size:11.5px;line-height:1.6}

/* Notice Meta & Fulltext */
.notice-meta-table{background:#fafaf7;border:1px solid var(--line);border-radius:6px;padding:14px 18px;margin-bottom:20px;display:grid;grid-template-columns:1fr 1fr;gap:10px 20px;font-size:12px}
.notice-meta-item strong{color:var(--muted);font-size:11px;display:block;margin-bottom:2px}
.notice-meta-item span{color:var(--ink);font-weight:600}
.notice-meta-item.span-2{grid-column:1/-1}
.notice-fulltext-box h4{font-size:13px;color:var(--navy);margin-bottom:10px;border-bottom:1px solid var(--line);padding-bottom:6px}
.fulltext-content{background:#fdfdfc;border:1px solid #e2e5dc;border-radius:4px;padding:16px 18px;font-size:12px;line-height:1.8;color:#384841;white-space:pre-wrap;max-height:320px;overflow-y:auto}

@media(max-width:600px){.diagnosis-sections-grid{grid-template-columns:1fr}.notice-meta-table{grid-template-columns:1fr}.modal-header,.modal-body,.modal-footer{padding:16px 18px}.modal-header h3{font-size:17px}}

/* Showcase Cases Grid & Cards (Light Gold Glassmorphism - No Dark Blocks) */
.showcase-section{padding:57px 0;background:var(--paper);border-bottom:1px solid #e1e3d8}
.showcase-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px;margin-top:20px}
.showcase-card{background:#fdfcf9;border:1px solid #dce1d5;border-radius:6px;padding:22px 24px;display:flex;flex-direction:column;gap:12px;box-shadow:0 2px 6px rgba(20,44,52,.04);transition:all .2s ease}
.showcase-card:hover{border-color:var(--gold-dark);transform:translateY(-2px);box-shadow:0 8px 18px rgba(20,44,52,.08)}
.showcase-card-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e8ebd0;padding-bottom:12px}
.showcase-facility-name{font-size:16px;font-weight:700;color:var(--navy);letter-spacing:-.4px}
.showcase-badge{font-size:10px;font-weight:600;color:#28624c;background:#edf6f0;border:1px solid #c2e2ce;padding:3px 7px;border-radius:3px}
.showcase-info-rows{display:grid;gap:8px;font-size:12px;line-height:1.6}
.showcase-info-row{display:flex;justify-content:space-between;align-items:center}
.showcase-info-row dt{color:var(--muted);font-size:11.5px}
.showcase-info-row dd{margin:0;font-weight:600;color:var(--ink)}
.showcase-highlight-row{background:#f6f4ee;padding:9px 12px;border-radius:4px;display:flex;justify-content:space-between;align-items:center;margin-top:4px}
.showcase-highlight-row strong{color:var(--gold-dark);font-size:13px}
.showcase-card-footer{margin-top:auto;padding-top:12px;border-top:1px dashed #dce1d5;display:flex;justify-content:space-between;align-items:center;font-size:11px}
.showcase-card-footer a{color:var(--gold-dark);font-weight:600}
.showcase-card-footer a:hover{text-decoration:underline}

/* ==========================================================================
   4대 사업분야 & 상세 페이지 스타일 시스템 (밝은 글래스모피즘 & 반응형)
   ========================================================================== */

/* 1. 상단 내비게이션 드롭다운 메뉴 */
.nav-dropdown{position:relative;display:inline-flex;align-items:center}
.nav-dropdown-btn{background:none;border:none;padding:6px 0;font-size:13px;font-weight:600;color:var(--ink);cursor:pointer;display:inline-flex;align-items:center;gap:4px}
.nav-dropdown-btn:hover{color:var(--gold-dark)}
.dropdown-arrow{font-size:10px;color:var(--gold-dark);transition:transform .2s ease}
.nav-dropdown:hover .dropdown-arrow,.nav-dropdown.is-open .dropdown-arrow{transform:rotate(180deg)}
.nav-dropdown-menu{position:absolute;top:100%;left:0;min-width:260px;background:rgba(255,255,255,.98);backdrop-filter:blur(8px);border:1px solid var(--line);border-radius:8px;box-shadow:0 16px 36px rgba(20,44,52,.12);padding:8px;margin-top:12px;display:none;z-index:60;animation:fadeInMenu .2s ease forwards}
@keyframes fadeInMenu{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu,.nav-dropdown.is-open .nav-dropdown-menu,.nav-dropdown-menu.is-open{display:flex;flex-direction:column;gap:4px}
.nav-dropdown-item{display:flex;flex-direction:column;padding:10px 14px;border-radius:6px;text-decoration:none;transition:background .15s ease,transform .15s ease}
.nav-dropdown-item:hover,.nav-dropdown-item.active{background:var(--cream);transform:translateX(3px)}
.nav-dropdown-item .item-title{font-size:13px;font-weight:700;color:var(--navy)}
.nav-dropdown-item .item-desc{font-size:11px;color:var(--muted);margin-top:2px}

/* 2. 메인 홈 4대 사업분야 카드 그리드 */
.service-grid.four-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
@media(max-width:1150px){.service-grid.four-cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.service-grid.four-cards{grid-template-columns:1fr}}

/* 3. 서비스 상세 페이지 전용 히어로 */
.service-hero{background:linear-gradient(180deg,#f7f5ee 0%,#fffefa 100%);border-bottom:1px solid var(--line);padding:36px 0 64px 0}
.breadcrumb{font-size:12px;color:var(--muted);margin-bottom:24px;display:flex;align-items:center;gap:8px}
.breadcrumb a{color:var(--muted);text-decoration:none}
.breadcrumb a:hover{color:var(--navy);text-decoration:underline}
.breadcrumb span{color:#b5beb6}
.breadcrumb strong{color:var(--navy);font-weight:700}
.service-hero-content{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}
.service-hero-copy{display:flex;flex-direction:column}
.service-badge{display:inline-block;font-size:11px;font-weight:700;color:var(--gold-dark);background:#fbf8f0;border:1px solid #dfd3ba;border-radius:4px;padding:4px 10px;width:max-content;margin-bottom:14px}
.service-hero h1{font-size:clamp(30px,3.2vw,44px);letter-spacing:-1.8px;line-height:1.35;color:var(--navy);margin-bottom:16px}
.service-hero h1 span{color:var(--gold-dark)}
.service-lead{font-size:17px;font-weight:600;color:var(--ink);line-height:1.6;margin-bottom:12px;letter-spacing:-.5px}
.service-desc{font-size:13.5px;color:var(--muted);line-height:1.85;margin-bottom:28px}
.service-actions{display:flex;gap:16px;align-items:center;margin-bottom:32px;flex-wrap:wrap}
.service-highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding-top:24px;border-top:1px solid var(--line)}
.hl-item strong{display:block;font-size:13px;color:var(--navy);font-weight:700}
.hl-item span{font-size:11px;color:var(--muted)}
.service-hero-visual{margin:0;position:relative;border-radius:10px;overflow:hidden;box-shadow:0 16px 36px rgba(20,44,52,.08);border:1px solid var(--line)}
.service-hero-visual img{width:100%;height:auto;display:block;object-fit:cover}
.service-hero-visual figcaption{padding:12px 16px;background:#fff;font-size:11px;color:var(--muted);border-top:1px solid var(--line)}

/* 4. 카드 및 컴포넌트 그리드 */
.feature-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}
.feature-card{background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:28px 24px;display:flex;flex-direction:column;transition:transform .2s ease,border-color .2s ease}
.feature-card:hover{transform:translateY(-3px);border-color:var(--gold-dark);box-shadow:0 12px 28px rgba(20,44,52,.06)}
.fc-num{font-family:Georgia,serif;font-size:24px;font-style:italic;color:var(--gold-dark);margin-bottom:12px}
.feature-card h3{font-size:20px;letter-spacing:-.6px;color:var(--navy);margin-bottom:10px}
.feature-card p{font-size:13px;color:var(--muted);line-height:1.75}

/* 5. 층별 분할 시공 플로우 */
.phase-section{background:var(--cream);border-radius:12px;padding:48px;margin-top:20px;margin-bottom:60px}
.phase-flow-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:24px}
.phase-flow-card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:24px 20px}
.step-badge{display:inline-block;font-size:10px;font-weight:700;color:#fff;background:var(--navy);padding:3px 8px;border-radius:3px;margin-bottom:12px}
.phase-flow-card h4{font-size:16px;color:var(--navy);margin-bottom:8px}
.phase-flow-card p{font-size:12.5px;color:var(--muted);line-height:1.7;margin-bottom:8px}
.phase-flow-card small{font-size:11px;color:var(--gold-dark);font-weight:600;display:block}

/* 6. 보조금 vs 융자 비교 테이블 */
.comparison-table-wrap{overflow-x:auto;margin-top:20px;border:1px solid var(--line);border-radius:8px;background:#fff}
.comparison-table{width:100%;border-collapse:collapse;font-size:13px;text-align:left}
.comparison-table th,.comparison-table td{padding:16px 20px;border-bottom:1px solid var(--line)}
.comparison-table thead th{background:#fbfbf8;font-weight:700;color:var(--navy);border-bottom:2px solid var(--line)}
.comparison-table tbody th{background:#fdfdfb;font-weight:600;color:#555}
.comparison-table tr:last-child th,.comparison-table tr:last-child td{border-bottom:none}
.highlight-grant{color:var(--success)}

/* 7. 인터랙티브 스마트 객실 시뮬레이터 */
.simulator-box{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 12px 32px rgba(20,44,52,.05)}
.sim-tab-bar{display:flex;background:#fbfbf8;border-bottom:1px solid var(--line);overflow-x:auto}
.sim-tab-btn{flex:1;min-height:54px;padding:14px 20px;background:none;border:none;font-size:13.5px;font-weight:600;color:var(--muted);border-bottom:2px solid transparent;cursor:pointer;transition:all .2s ease;white-space:nowrap}
.sim-tab-btn:hover{color:var(--navy);background:#f6f5ee}
.sim-tab-btn.active{color:var(--navy);font-weight:700;background:#fff;border-bottom-color:var(--gold-dark)}
.sim-display-panel{padding:36px 32px}
.sim-spec-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:28px}
.sim-spec-item{background:var(--cream);border:1px solid #e2e5dc;border-radius:8px;padding:18px 16px}
.spec-label{display:block;font-size:11px;font-weight:600;color:var(--muted);margin-bottom:6px}
.spec-value{display:block;font-size:15px;color:var(--navy);font-weight:700;margin-bottom:4px}
.sim-spec-item small{font-size:10.5px;color:#6d7b73;line-height:1.5;display:block}
.sim-summary-box{background:#fbf8f0;border-left:3px solid var(--gold-dark);border-radius:4px;padding:16px 20px}
.sim-summary-box strong{display:block;font-size:14px;color:var(--navy);margin-bottom:6px}
.sim-summary-box p{font-size:12.5px;color:#546059;line-height:1.75;margin:0}

/* 8. 지원요약 & 목업 카드 */
.support-summary-card,.smart-mockup-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:32px 28px}
.support-summary-card h3,.smart-mockup-card h3{font-size:18px;color:var(--navy);margin:10px 0 8px 0}
.support-summary-card p,.smart-mockup-card p{font-size:12.5px;color:var(--muted);line-height:1.7;margin-bottom:20px}
.support-key-points{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.support-key-points div{background:var(--cream);padding:12px;border-radius:6px;text-align:center;border:1px solid #e2e5dc}
.support-key-points strong{display:block;font-size:10px;color:var(--muted);margin-bottom:4px}
.support-key-points span{font-size:12px;font-weight:700;color:var(--navy)}

.smart-mockup-modes{display:grid;gap:10px}
.mock-mode-pill{padding:12px 16px;border:1px solid var(--line);border-radius:6px;font-size:12px;font-weight:600;color:var(--ink);background:#faf9f6}
.mock-mode-pill.active{border-color:var(--gold-dark);background:#fbf8f0;color:var(--gold-dark);font-weight:700}

@media(max-width:850px){
  .service-hero-content{grid-template-columns:1fr;gap:32px}
  .service-highlights{grid-template-columns:1fr}
  .phase-section{padding:28px 20px}
  .phase-flow-grid{grid-template-columns:1fr}
  .sim-spec-grid{grid-template-columns:1fr 1fr}
  .nav-dropdown-menu{position:static;box-shadow:none;border:none;padding:0 0 0 12px;background:transparent;display:flex;flex-direction:column}
}
@media(max-width:550px){
  .sim-spec-grid{grid-template-columns:1fr}
}

/* ==========================================================================
   🏛️ 4대 사업분야 전용 서브 내비게이션 바 (Service Sub-Nav Bar - Sticky)
   ========================================================================== */
.service-subnav-wrapper{
  position:sticky;
  top:72px;
  z-index:900;
  background:rgba(255,255,255,0.94);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(226,232,240,0.85);
  box-shadow:0 4px 16px rgba(0,0,0,0.03);
  transition:all .2s ease;
}
.service-subnav-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:10px 0;
}
.service-subnav-label{
  display:flex;
  align-items:center;
  gap:8px;
  flex-shrink:0;
}
.subnav-badge{
  font-size:0.75rem;
  font-weight:700;
  color:#c59b27;
  background:rgba(197,155,39,0.12);
  padding:3px 8px;
  border-radius:6px;
  letter-spacing:0.02em;
}
.subnav-title{
  font-size:0.875rem;
  font-weight:700;
  color:#142c34;
}
.service-subnav-list{
  display:flex;
  align-items:center;
  gap:8px;
  overflow-x:auto;
  white-space:nowrap;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  padding:2px 0;
}
.service-subnav-list::-webkit-scrollbar{display:none}
.subnav-item{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:8px 14px;
  font-size:0.875rem;
  font-weight:600;
  color:#4a5568;
  border-radius:8px;
  text-decoration:none;
  background:rgba(241,245,249,0.6);
  border:1px solid transparent;
  transition:all .15s ease;
}
.subnav-item:hover{
  background:#fff;
  color:#142c34;
  border-color:rgba(197,155,39,0.3);
  box-shadow:0 2px 8px rgba(0,0,0,0.04);
}
.subnav-item.active{
  background:#fff;
  color:#c59b27;
  font-weight:700;
  border-color:#c59b27;
  box-shadow:0 2px 10px rgba(197,155,39,0.15);
}
.subnav-icon{font-size:1rem}
.subnav-cta-btn{
  flex-shrink:0;
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:8px 14px;
  font-size:0.8125rem;
  font-weight:700;
  color:#fff;
  background:#142c34;
  border-radius:8px;
  text-decoration:none;
  transition:all .15s ease;
}
.subnav-cta-btn:hover{background:#c59b27;color:#fff}

/* ==========================================================================
   ✨ Hero 퀵 스위처 칩 바 & 헤더 드롭다운 강화
   ========================================================================== */
.hero-quick-chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:20px;
}
.quick-chip{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 12px;
  font-size:0.8125rem;
  font-weight:600;
  color:#142c34;
  background:rgba(255,255,255,0.8);
  border:1px solid rgba(226,232,240,0.9);
  border-radius:20px;
  text-decoration:none;
  box-shadow:0 2px 6px rgba(0,0,0,0.03);
  transition:all .15s ease;
}
.quick-chip:hover{
  background:#fff;
  border-color:#c59b27;
  color:#c59b27;
  transform:translateY(-1px);
}
.quick-chip.active{
  background:#fff;
  border-color:#c59b27;
  color:#c59b27;
  font-weight:700;
}
.chip-dot{
  width:6px;
  height:6px;
  border-radius:50%;
  background:#c59b27;
}
.quick-chip.hub-chip{
  background:rgba(197,155,39,0.1);
  border-color:rgba(197,155,39,0.3);
  color:#b3861b;
}
.quick-chip.hub-chip:hover{
  background:#c59b27;
  color:#fff;
}
.nav-dropdown-divider{
  height:1px;
  background:#edf2f7;
  margin:4px 0;
}
.nav-dropdown-item.all-hub{
  background:rgba(197,155,39,0.06);
  border-left:3px solid #c59b27;
  border-radius:0 6px 6px 0;
}

/* ==========================================================================
   📋 4대 사업분야 종합 포털 (/services/) & 흐름도 스타일
   ========================================================================== */
.service-hero-chips{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:24px;
}
.chip-item{
  display:inline-flex;
  align-items:center;
  padding:8px 16px;
  font-size:0.875rem;
  font-weight:600;
  color:#142c34;
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:8px;
  text-decoration:none;
  box-shadow:0 2px 8px rgba(0,0,0,0.04);
  transition:all .15s ease;
}
.chip-item:hover{
  border-color:#c59b27;
  color:#c59b27;
  transform:translateY(-2px);
  box-shadow:0 4px 12px rgba(197,155,39,0.12);
}

.lifecycle-flow-grid{
  display:grid;
  grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;
  align-items:center;
  gap:12px;
  margin-top:36px;
}
.flow-step-card{
  background:#fff;
  border:1px solid #e2e8f0;
  border-radius:14px;
  padding:24px 18px;
  box-shadow:0 4px 16px rgba(0,0,0,0.04);
  display:flex;
  flex-direction:column;
  height:100%;
}
.flow-step-card:hover{
  border-color:rgba(197,155,39,0.4);
  box-shadow:0 6px 20px rgba(197,155,39,0.08);
}
.step-badge{
  font-size:0.75rem;
  font-weight:700;
  color:#c59b27;
  background:rgba(197,155,39,0.1);
  padding:3px 8px;
  border-radius:6px;
  align-self:flex-start;
  margin-bottom:12px;
}
.step-icon{font-size:2rem;margin-bottom:8px}
.flow-step-card h3{font-size:1.125rem;margin:0 0 8px;color:#142c34}
.step-summary{font-size:0.8125rem;color:#4a5568;line-height:1.5;margin:0 0 12px;flex-grow:1}
.step-points{list-style:none;padding:0;margin:0 0 16px;display:flex;flex-direction:column;gap:6px}
.step-points li{font-size:0.75rem;color:#718096;display:flex;align-items:center;gap:6px}
.step-points li::before{content:"✓";color:#c59b27;font-weight:700}
.step-link{font-size:0.8125rem;font-weight:700;color:#c59b27;text-decoration:none;align-self:flex-start}
.step-link:hover{text-decoration:underline}
.flow-connector{font-size:1.25rem;color:#cbd5e0;font-weight:700}

/* 서비스 카드 디테일 강화 */
.card-icon-header{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:12px;
}
.service-visual-icon{font-size:2rem;line-height:1}
.service-badge-sub{font-size:0.75rem;color:#718096}
.service-lead-p{font-size:0.875rem;color:#4a5568;line-height:1.55;margin-bottom:16px}
.service-spec-table{
  background:#f8fafc;
  border:1px solid #edf2f7;
  border-radius:8px;
  padding:10px 12px;
  display:flex;
  flex-direction:column;
  gap:6px;
  margin-bottom:16px;
}
.spec-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:0.75rem;
}
.spec-k{color:#718096;font-weight:600}
.spec-v{color:#142c34;font-weight:600;text-align:right}

.heading-side-action{
  display:flex;
  align-items:center;
  gap:16px;
  flex-wrap:wrap;
}
.side-btn{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:0.8125rem;
  font-weight:700;
  color:#142c34;
  background:rgba(255,255,255,0.9);
  border:1px solid rgba(197,155,39,0.3);
  padding:8px 14px;
  border-radius:8px;
  text-decoration:none;
  box-shadow:0 2px 6px rgba(0,0,0,0.03);
  transition:all .15s ease;
}
.side-btn:hover{
  background:#c59b27;
  color:#fff;
  border-color:#c59b27;
}

.card-bottom-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-top:auto;
  padding-top:12px;
  border-top:1px solid #edf2f7;
}
.card-sub-link{
  font-size:0.8125rem;
  color:#718096;
  text-decoration:none;
}
.card-sub-link:hover{color:#142c34;text-decoration:underline}

.services-hub-banner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-top:28px;
  padding:20px 28px;
  background:linear-gradient(135deg, rgba(255,255,255,0.95), rgba(248,250,252,0.95));
  border:1px solid rgba(197,155,39,0.3);
  border-radius:14px;
  box-shadow:0 4px 16px rgba(197,155,39,0.06);
}
.hub-banner-content strong{display:block;font-size:1rem;color:#142c34;margin-bottom:4px}
.hub-banner-content p{margin:0;font-size:0.875rem;color:#4a5568}

/* ==========================================================================
   🏛️ 4대 핵심 사업분야 & 에디토리얼 글래스모피즘 컴포넌트 시스템
   ========================================================================== */
.section-label{font-size:11px;font-weight:700;letter-spacing:2px;color:var(--gold-dark);margin-bottom:8px;display:block;text-transform:uppercase}
.section-heading.centered{text-align:center;display:flex;flex-direction:column;align-items:center;margin-bottom:48px}
.section-heading.centered p{max-width:640px;margin-top:8px}

/* 4대 핵심 사업분야 카드 그리드 (데스크톱 기본: 4열) */
.service-grid.four-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.service-card{background:#ffffff;border:1px solid #e2e5dc;border-radius:10px;padding:32px 26px;display:flex;flex-direction:column;box-shadow:0 4px 14px rgba(20,44,52,0.03);transition:all .25s ease}
.service-card:hover{transform:translateY(-3px);border-color:var(--gold-dark);box-shadow:0 12px 28px rgba(20,44,52,0.08)}
.service-card.featured{background:linear-gradient(180deg,#fffefa 0%,#fbf9f4 100%);border-color:#d9b875;box-shadow:0 8px 24px rgba(217,184,117,0.12)}
.service-card .card-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid #edf0e6}
.service-card .card-num{font-family:Georgia,serif;font-size:26px;font-style:italic;font-weight:700;color:var(--gold-dark)}
.service-card .card-domain-label{font-size:11px;font-weight:700;color:var(--navy);letter-spacing:-0.2px}
.service-card h3{font-size:20px;font-weight:700;color:var(--navy);letter-spacing:-0.6px;margin-bottom:12px;line-height:1.4;word-break:keep-all}
.service-card .card-desc{font-size:13px;color:var(--muted);line-height:1.75;margin-bottom:20px;flex-grow:0;word-break:keep-all}
.service-card .card-bullet-list{list-style:none;padding:0;margin:0 0 24px 0;display:flex;flex-direction:column;gap:8px;flex-grow:1}
.service-card .card-bullet-list li{font-size:12px;color:#47584f;line-height:1.6;position:relative;padding-left:16px;word-break:keep-all}
.service-card .card-bullet-list li::before{content:"—";position:absolute;left:0;color:var(--gold-dark);font-weight:700}
.service-card .card-footer{margin-top:auto;padding-top:18px;border-top:1px solid #edf0e6}
.service-card .card-action-link{display:inline-flex;align-items:center;justify-content:space-between;width:100%;font-size:12.5px;font-weight:700;color:var(--navy);text-decoration:none;transition:color .2s ease}
.service-card .card-action-link:hover{color:var(--gold-dark)}

/* 숙박시설 4단계 밸류업 로드맵 (데스크톱 기본: 4열) */
.roadmap-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:36px}
.roadmap-item{background:#ffffff;border:1px solid #e2e5dc;border-radius:10px;padding:26px 22px;display:flex;flex-direction:column;box-shadow:0 2px 8px rgba(20,44,52,0.03);transition:all .2s ease}
.roadmap-item:hover{border-color:var(--gold-dark);transform:translateY(-2px);box-shadow:0 8px 20px rgba(20,44,52,0.06)}
.roadmap-step{font-size:11px;font-weight:800;color:var(--gold-dark);letter-spacing:1.5px;margin-bottom:12px;display:block}
.roadmap-item h4{font-size:16px;font-weight:700;color:var(--navy);letter-spacing:-0.4px;margin-bottom:8px;word-break:keep-all}
.roadmap-item p{font-size:12.5px;color:var(--muted);line-height:1.7;margin:0;word-break:keep-all}

/* 반응형 미디어 쿼리 (반드시 전역 선언 뒤에 위치하여 정확히 오버라이드) */
@media(max-width:1150px){
  .service-grid.four-cards{grid-template-columns:repeat(2,1fr);gap:20px}
  .roadmap-grid{grid-template-columns:repeat(2,1fr);gap:18px}
  .proof-grid{grid-template-columns:1fr;gap:28px}
  .lifecycle-flow-grid{grid-template-columns:1fr 1fr;gap:16px}
  .flow-connector{display:none}
}
@media(max-width:850px){
  .hero-inner{grid-template-columns:1fr;gap:32px}
  .partnership-strip.glass-card{grid-template-columns:1fr;gap:24px}
  .process-list.four-steps{grid-template-columns:1fr 1fr;gap:20px}
  .service-subnav-label{display:none}
  .subnav-cta-btn{display:none}
}
@media(max-width:650px){
  /* 4대 사업분야 모바일 1열 풀위드 고선명 카드 스택 */
  .service-grid.four-cards{grid-template-columns:1fr!important;gap:18px}
  .service-card{padding:24px 20px;border-radius:12px}
  .service-card .card-header{margin-bottom:14px;padding-bottom:10px}
  .service-card .card-num{font-size:24px}
  .service-card h3{font-size:18.5px;margin-bottom:10px;line-height:1.4}
  .service-card .card-desc{font-size:13.5px;line-height:1.65;margin-bottom:16px}
  .service-card .card-bullet-list{gap:7px;margin-bottom:18px}
  .service-card .card-bullet-list li{font-size:13px;line-height:1.55}
  .service-card .card-footer{padding-top:14px}
  .service-card .card-action-link{font-size:13px;min-height:44px;display:inline-flex;align-items:center}
  
  /* 4단계 로드맵 모바일 수직 타임라인 전환 */
  .roadmap-grid{grid-template-columns:1fr!important;gap:16px;position:relative;padding-left:20px;border-left:2px solid #e5d7b5;margin-left:10px;margin-top:28px}
  .roadmap-item{padding:20px 18px;border-radius:10px;position:relative}
  .roadmap-item::before{content:"";position:absolute;left:-29px;top:22px;width:16px;height:16px;border-radius:50%;background:var(--gold-dark);border:3px solid #ffffff;box-shadow:0 0 0 2px #e5d7b5}
  .roadmap-step{margin-bottom:8px}
  .roadmap-item h4{font-size:16px;margin-bottom:6px}
  .roadmap-item p{font-size:13px;line-height:1.6}

  .process-list.four-steps{grid-template-columns:1fr}
  .partnership-stats{grid-template-columns:1fr}
  .lifecycle-flow-grid{grid-template-columns:1fr}
  .services-hub-banner{flex-direction:column;align-items:flex-start}
}

/* 검증된 시공 쇼케이스 & 표준 진단서 */
#proof{scroll-margin-top:100px}
.proof-grid{display:grid;grid-template-columns:1.15fr 0.85fr;gap:32px;align-items:stretch;margin-top:28px}
.proof-chart-column.glass-card{background:linear-gradient(135deg,#ffffff 0%,#fdfbf7 100%);border:1px solid #dfd3ba;border-radius:12px;padding:28px 24px;box-shadow:0 8px 24px rgba(20,44,52,0.04);display:flex;flex-direction:column;height:100%}
.chart-panel-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid rgba(20,44,52,0.08);min-height:52px}
.chart-panel-badge{font-size:11px;font-weight:700;color:var(--gold-dark,#87612b);background:rgba(180,140,75,0.12);padding:3px 10px;border-radius:20px;display:inline-block;margin-bottom:6px}
.chart-panel-title{font-size:18px;font-weight:700;color:var(--navy,#142c34);letter-spacing:-0.4px;margin:0}
.chart-tab-group{display:inline-flex;background:#f2ede4;padding:4px;border-radius:30px;gap:4px;border:1px solid rgba(20,44,52,0.06)}
.chart-tab-btn{border:none;background:transparent;padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600;color:#64748b;cursor:pointer;transition:all .25s ease}
.chart-tab-btn.active{background:#ffffff;color:var(--navy,#142c34);font-weight:700;box-shadow:0 2px 6px rgba(0,0,0,0.08)}
.chart-tab-btn:hover:not(.active){color:var(--navy,#142c34)}
.chart-view-panel{display:flex;flex-direction:column;flex:1}
.chart-view-panel[hidden]{display:none!important}
.chart-meta-strip{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;font-size:11.5px;color:#64748b;margin-bottom:18px;background:rgba(245,242,234,0.6);padding:8px 12px;border-radius:6px;border:1px solid #ece7dc;min-height:35px}
.chart-meta-strip small{color:var(--gold-dark,#87612b);font-weight:700}
.vulnerability-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:20px}
.vuln-card{background:#ffffff;border:1px solid #e8e4dc;border-radius:10px;padding:16px;cursor:pointer;transition:all .25s cubic-bezier(0.16,1,0.3,1);user-select:none;position:relative;display:flex;flex-direction:column;justify-content:space-between}
.vuln-card:hover{transform:translateY(-2px);border-color:var(--gold,#c4a059);box-shadow:0 6px 16px rgba(20,44,52,0.06)}
.vuln-card.active{border-color:var(--gold-dark,#87612b);background:#fefdf9;box-shadow:0 0 0 2px rgba(180,140,75,0.3),0 6px 16px rgba(20,44,52,0.06)}
.vuln-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.vuln-tag{font-size:10px;font-weight:700;padding:2px 6px;border-radius:4px}
.vuln-tag.high-risk{background:#fee2e2;color:#b91c1c}
.vuln-tag.mid-risk{background:#fef3c7;color:#b45309}
.vuln-tag.opt-risk{background:#e0e7ff;color:#3730a3}
.vuln-tag.sales-risk{background:#fef08a;color:#854d0e}
.vuln-rate{font-family:Georgia,serif;font-size:20px;font-weight:700;color:var(--navy,#142c34)}
.vuln-name{font-size:13.5px;font-weight:700;color:var(--navy,#142c34);margin:0 0 10px;letter-spacing:-0.3px}
.vuln-progress-bar{background:#eeeae2;border-radius:10px;height:7px;overflow:hidden;margin-bottom:10px}
.vuln-progress-fill{height:100%;border-radius:10px;transition:width .8s cubic-bezier(0.16,1,0.3,1)}
.fill-waterproof{background:linear-gradient(90deg,#c4a059,#b91c1c)}
.fill-plumbing{background:linear-gradient(90deg,#c4a059,#d97706)}
.fill-smart{background:linear-gradient(90deg,#c4a059,#2563eb)}
.fill-interior{background:linear-gradient(90deg,#c4a059,#87612b)}
.vuln-detail{display:flex;flex-direction:column;gap:3px;font-size:11px;color:#64748b}
.vuln-detail strong{color:var(--navy,#142c34)}
.chart-summary-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;background:#ffffff;border:1px solid #e4e0d6;border-radius:8px;padding:14px 12px;text-align:center;margin-top:auto}
.summary-num{display:block;font-family:Georgia,serif;font-size:18px;font-weight:700;color:var(--gold-dark,#87612b);margin-bottom:3px}
.summary-label{font-size:11px;color:#64748b;font-weight:600}
.improvement-list{display:flex;flex-direction:column;gap:14px;margin-bottom:20px}
.imp-item{background:#ffffff;border:1px solid #e8e4dc;border-radius:8px;padding:14px 16px}
.imp-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.imp-title{font-size:13.5px;font-weight:700;color:var(--navy,#142c34)}
.imp-badge{font-size:11px;font-weight:700;padding:3px 8px;border-radius:12px}
.imp-badge.badge-green{background:#dcfce7;color:#15803d}
.imp-badge.badge-gold{background:rgba(180,140,75,0.15);color:#87612b}
.imp-bars{display:flex;flex-direction:column;gap:6px}
.bar-row{display:grid;grid-template-columns:85px 1fr;align-items:center;gap:10px;font-size:11px;color:#64748b}
.bar-track{background:#eeeae2;border-radius:6px;height:18px;position:relative;overflow:hidden}
.bar-val{height:100%;border-radius:6px;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:flex-end;padding-right:8px;transition:width .8s ease}
.bar-val-before{background:#cbd5e1;color:#475569}
.bar-val-after.fill-green{background:linear-gradient(90deg,#86efac,#15803d);color:#ffffff}
.bar-val-after.fill-gold{background:linear-gradient(90deg,#fde047,#b45309);color:#ffffff}
.imp-footnote{display:flex;align-items:flex-start;gap:8px;background:rgba(245,242,234,0.6);border:1px solid #e2ddd3;border-radius:6px;padding:10px 14px;margin-top:auto}
.footnote-icon{color:#15803d;font-weight:700;font-size:14px;line-height:1.4}
.imp-footnote p{font-size:11.5px;color:#64748b;margin:0;line-height:1.5}

/* 우측 표준 진단서 (좌측 차트와 오와열 및 바닥선 완전 일치) */
.sample-report.glass-card{background:#fdfcf9;border:1px solid #dfd3ba;border-radius:12px;padding:28px 24px;box-shadow:0 8px 24px rgba(20,44,52,0.04);display:flex;flex-direction:column;height:100%}
.sample-report .report-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid rgba(20,44,52,0.08);min-height:52px}
.sample-report .report-title-badge{font-size:11px;font-weight:700;letter-spacing:0.5px;color:var(--gold-dark);background:rgba(180,140,75,0.12);padding:3px 10px;border-radius:20px;display:inline-block}
.sample-report .text-btn{background:none;border:none;font-size:12px;font-weight:700;color:var(--navy);cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.sample-report .text-btn:hover{color:var(--gold-dark)}
.sample-report .report-meta-strip{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;font-size:11.5px;color:#64748b;margin-bottom:16px;background:rgba(245,242,234,0.6);padding:8px 12px;border-radius:6px;border:1px solid #ece7dc;min-height:35px}
.sample-report .report-meta-strip strong{color:var(--gold-dark,#87612b)}
.sample-report .report-meta-tag{font-size:10px;font-weight:700;color:#15803d;background:#dcfce7;padding:2px 7px;border-radius:4px}
.sample-report h3{font-size:18px;font-weight:700;color:var(--navy,#142c34);letter-spacing:-0.4px;margin:0 0 6px;line-height:1.35}
.sample-report .report-subtitle{font-size:12px;color:#64748b;margin:0 0 16px;line-height:1.5}
.sample-report .report-rows{margin:0 0 16px;display:flex;flex-direction:column;flex:1;justify-content:space-between}
.sample-report .report-rows>div{display:grid;grid-template-columns:85px 1fr;gap:12px;border-top:1px solid #e8ebd0;padding:12px 0;font-size:12px;line-height:1.6}
.sample-report .report-rows dt{color:var(--gold-dark,#87612b);font-weight:700}
.sample-report .report-rows dd{margin:0;color:var(--navy,#142c34);font-weight:500}
.sample-report .report-guarantee-strip{display:flex;justify-content:space-between;align-items:center;background:#ffffff;border:1px solid #e4e0d6;border-radius:8px;padding:9px 12px;margin-bottom:16px;font-size:11px;font-weight:600;color:#475569}
.sample-report .report-next{margin-top:auto;display:grid;grid-template-columns:1fr auto;align-items:center;gap:3px 10px;background:#edf0e6;border-radius:8px;padding:14px 18px;border:1px solid #dce2d2;cursor:pointer;transition:all .2s ease;user-select:none}
.sample-report .report-next:hover{background:#e2e7d7;transform:translateY(-1px);box-shadow:0 4px 12px rgba(20,44,52,0.08)}
@media(max-width:850px){
  .proof-grid{grid-template-columns:1fr}
  .vulnerability-grid{grid-template-columns:1fr}
  .chart-panel-header{flex-direction:column;align-items:flex-start}
}

/* 투명한 진행 4단계 & 전문 시공 파트너십 */
.process-list.four-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;list-style:none;padding:0;margin:0 0 40px 0}
.process-list.four-steps li{position:relative;border-top:2px solid #dfd3ba;padding-top:22px}
.process-list.four-steps .step-num{font-family:Georgia,serif;font-style:italic;font-size:24px;font-weight:700;color:var(--gold-dark);display:block;margin-bottom:10px}
.process-list.four-steps h3{font-size:16px;font-weight:700;color:var(--navy);letter-spacing:-0.4px;margin-bottom:8px}
.process-list.four-steps p{font-size:12.5px;color:var(--muted);line-height:1.75;margin:0}
.partnership-strip.glass-card{background:linear-gradient(135deg,#fbf9f4 0%,#fffefa 100%);border:1px solid #dfd3ba;border-radius:12px;padding:32px 36px;display:grid;grid-template-columns:1.3fr 0.7fr;gap:40px;align-items:center;box-shadow:0 4px 16px rgba(20,44,52,0.03)}
.partnership-info h4{font-size:18px;font-weight:700;color:var(--navy);margin-bottom:10px;letter-spacing:-0.4px}
.partnership-info p{font-size:13px;color:var(--muted);line-height:1.85;margin:0}
.partnership-info strong{color:var(--navy);font-weight:700}
.partnership-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.stat-box{background:#ffffff;border:1px solid #e4e7df;border-radius:8px;padding:16px 12px;text-align:center;box-shadow:0 2px 6px rgba(20,44,52,0.02)}
.stat-box strong{display:block;font-family:Georgia,serif;font-size:22px;font-weight:700;color:var(--navy);margin-bottom:4px}
.stat-box span{font-size:11px;color:var(--muted);font-weight:600}

/* 🚫 원색 배지 박멸 및 미니멀 타이포그래피 정규화 */
.service-badge,.archive-badge,.step-badge{background:transparent!important;border:none!important;padding:0!important;border-radius:0!important;font-size:11px!important;font-weight:800!important;letter-spacing:1.5px!important;color:var(--gold-dark)!important;text-transform:uppercase!important;margin-bottom:12px!important;display:inline-block!important}
.tag:not(.tag-clickable){background:transparent!important;border:1px solid #dcded5!important;color:var(--muted)!important;font-size:11px!important;padding:2px 6px!important;border-radius:2px!important}
.showcase-badge{background:transparent!important;border:none!important;padding:0!important;font-size:11px!important;font-weight:700!important;color:var(--success)!important}

/* ==========================================================================
   🖼️ 오아시스AI 스타일 비주얼 에디토리얼 헤더 (Visual Editorial Header System)
   - 흐릿하고 은은한 우측 배경 이미지 블러 & 그라디언트 페이드
/* ==========================================================================
   🖼️ 오아시스건설 통합 비주얼 에디토리얼 헤더 시스템 (Unified Hero Architecture)
   - 홈 (Home): 더 크고 웅장한 볼륨감 (min-height: 620px, image width: 60%, 패딩 확장)
   - 전 서브페이지 (About, Services, Cases, Support): 
     * 와이드 형태 기본 (100vw 전면 개방)
     * 위아래 사이즈(높이) 및 이미지 크기 100% 완전 통일 (min-height: 480px, image width: 55%)
   ========================================================================== */
.page-visual-hero,
.page-visual-hero.home-hero,
.page-visual-hero.page-sub-hero,
.page-visual-hero.service-domain-hero {
  position: relative;
  overflow: hidden;
  background: #fbf8f0;
  border-bottom: 1px solid var(--line);
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 520px;
  padding-top: 48px;
  padding-bottom: 48px;
}
.page-visual-hero.service-domain-hero {
  padding-top: 24px;
  padding-bottom: 24px;
}
.page-visual-hero.service-domain-hero .hero-copy-column .hero-lead {
  margin-bottom: 8px;
}
.page-visual-hero.service-domain-hero .hero-copy-column .hero-description {
  margin-bottom: 14px;
  line-height: 1.65;
}
.page-visual-hero.service-domain-hero .service-highlights-strip {
  margin-top: 12px;
  padding-top: 10px;
}
.page-visual-hero.service-domain-hero .hl-chip {
  padding: 6px 14px;
}

/* 전 헤더 배경 비주얼 에셋 - 경계선 완전 제거 (Seamless Mask Image) */
.hero-bg-visual,
.home-hero .hero-bg-visual,
.page-sub-hero .hero-bg-visual,
.service-domain-hero .hero-bg-visual {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 65%;
  height: 100%;
  background-size: cover;
  background-position: center right;
  background-repeat: no-repeat;
  z-index: 1;
  pointer-events: none;
  opacity: 1 !important;
  filter: saturate(1.15) contrast(1.05) !important;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, transparent 12%, rgba(0,0,0,0.2) 28%, rgba(0,0,0,0.7) 50%, #000 75%, #000 100%);
  mask-image: linear-gradient(90deg, transparent 0%, transparent 12%, rgba(0,0,0,0.2) 28%, rgba(0,0,0,0.7) 50%, #000 75%, #000 100%);
}

.home-hero .hero-copy-column h1 {
  font-size: clamp(34px, 3.8vw, 48px);
  line-height: 1.28;
  letter-spacing: -2px;
}
.home-hero .hero-lead {
  font-size: 17px;
  font-weight: 600;
  color: var(--ink);
  margin-bottom: 14px;
}

.hero-bg-mask {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(90deg, #fbf8f0 0%, #fbf8f0 36%, rgba(251,248,240,0.94) 52%, rgba(251,248,240,0.55) 72%, rgba(251,248,240,0.05) 100%);
  z-index: 2;
  pointer-events: none;
}
.hero-content-grid {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 48px;
  align-items: center;
  padding-top: 0;
  padding-bottom: 0;
  width: 100%;
}
.sub-hero-grid {
  grid-template-columns: 1.15fr 0.85fr;
  gap: 48px;
}
.hero-copy-column {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.hero-copy-column .hero-subtitle {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.8px;
  color: var(--gold-dark);
  text-transform: uppercase;
  margin-bottom: 14px;
  display: inline-block;
}
.hero-copy-column h1 {
  font-size: clamp(30px, 3.2vw, 46px);
  letter-spacing: -1.8px;
  font-weight: 700;
  line-height: 1.32;
  color: var(--navy);
  margin-bottom: 16px;
}
.hero-copy-column h1 > span {
  color: var(--gold-dark);
}
.hero-copy-column .hero-lead {
  font-size: 16.5px;
  font-weight: 600;
  color: var(--ink);
  letter-spacing: -0.5px;
  margin-bottom: 12px;
  line-height: 1.6;
}
.hero-copy-column .hero-description {
  font-size: 13.5px;
  color: var(--muted);
  line-height: 1.85;
  margin-bottom: 26px;
}

/* 우측 글래스모피즘 실시간 지표 카드 */
.hero-stat-card.glass-card {
  background: rgba(255, 254, 250, 0.90);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid #dfd3ba;
  border-radius: 12px;
  padding: 30px 28px;
  box-shadow: 0 16px 36px rgba(20, 44, 52, 0.07);
}
.stat-card-header {
  margin-bottom: 14px;
  padding-bottom: 10px;
  border-bottom: 1px solid #edf0e6;
}
.stat-card-label {
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 1.5px;
  color: var(--gold-dark);
  text-transform: uppercase;
  display: block;
  margin-bottom: 4px;
}
.stat-card-header h3 {
  font-size: 18px;
  font-weight: 700;
  color: var(--navy);
  margin: 0;
  letter-spacing: -0.4px;
}
.stat-big-metric {
  margin: 14px 0 16px;
}
.stat-big-metric .metric-label {
  font-size: 11.5px;
  font-weight: 600;
  color: var(--muted);
  display: block;
  margin-bottom: 4px;
}
.stat-big-metric .metric-value {
  font-family: Georgia, serif;
  font-size: 38px;
  font-weight: 700;
  color: var(--navy);
  line-height: 1.15;
  display: block;
  letter-spacing: -1px;
}
.stat-big-metric .metric-value span {
  font-family: var(--sans);
  font-size: 18px;
  font-weight: 600;
  color: var(--gold-dark);
  margin-left: 3px;
}
.stat-sub-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin: 14px 0;
  padding: 12px 0;
  border-top: 1px solid #edf0e6;
  border-bottom: 1px solid #edf0e6;
}
.sub-stat-box {
  background: rgba(251, 248, 240, 0.75);
  border: 1px solid #e8ebd0;
  border-radius: 6px;
  padding: 9px 12px;
}
.sub-stat-box .sub-k {
  font-size: 10.5px;
  color: var(--muted);
  display: block;
  margin-bottom: 2px;
}
.sub-stat-box .sub-v {
  font-size: 13.5px;
  font-weight: 700;
  color: var(--navy);
}
.stat-check-points {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-top: 12px;
}
.stat-check-points p {
  font-size: 12px;
  color: #47584f;
  line-height: 1.6;
  margin: 0;
}

/* 🏷️ 전역 헤더 2대 플랫폼 바로가기 배지 (스마트호텔시스템 + OASISBUILD CRM · 좌우 동일 크기 & 오아시스AI 스타일) */
.header-action-badges {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}
.header-smart-badge,
.header-crm-badge,
.header-hotel-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  width: 148px;
  height: 32px;
  box-sizing: border-box;
  padding: 0 8px;
  background: rgba(248, 250, 252, 0.85);
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  text-decoration: none;
  white-space: nowrap;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
  transition: all 0.25s ease;
}
.header-smart-badge .badge-label,
.header-crm-badge .badge-label,
.header-hotel-badge .badge-label {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: -0.3px;
  line-height: 1;
  color: #334155;
  transition: color 0.2s ease;
}
.header-smart-badge:hover,
.header-hotel-badge:hover {
  background: #ffffff;
  border-color: #93c5fd;
  box-shadow: 0 3px 10px rgba(37, 99, 235, 0.12);
  transform: translateY(-1px);
}
.header-smart-badge:hover .badge-label,
.header-hotel-badge:hover .badge-label {
  color: #1d4ed8;
}
.header-crm-badge:hover {
  background: #ffffff;
  border-color: #86efac;
  box-shadow: 0 3px 10px rgba(5, 150, 105, 0.12);
  transform: translateY(-1px);
}
.header-crm-badge:hover .badge-label {
  color: #047857;
}

.badge-icon-box {
  width: 20px;
  height: 20px;
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: all 0.25s ease;
}
.smart-icon-box {
  background: #eff6ff;
  color: #2563eb;
}
.header-smart-badge:hover .smart-icon-box,
.header-hotel-badge:hover .smart-icon-box {
  background: #2563eb;
  color: #ffffff;
}
.crm-icon-box {
  background: #ecfdf5;
  color: #059669;
}
.header-crm-badge:hover .crm-icon-box {
  background: #059669;
  color: #ffffff;
}
@media(max-width:850px) {
  .header-smart-badge,
  .header-crm-badge,
  .header-hotel-badge {
    width: 136px;
    height: 30px;
    gap: 5px;
    padding: 0 6px;
  }
  .header-smart-badge .badge-label,
  .header-crm-badge .badge-label,
  .header-hotel-badge .badge-label {
    font-size: 10px;
  }
  .badge-icon-box {
    width: 18px;
    height: 18px;
  }
}
/* 대표 강조 CTA: 공사 범위 상담하기 (헤더 단일 강조 버튼) */
.header-cta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  font-size: 12.5px;
  font-weight: 700;
  color: #fff;
  background: #b8892a;
  border: 1px solid #b8892a;
  border-radius: 9999px;
  text-decoration: none;
  white-space: nowrap;
  box-shadow: 0 2px 8px rgba(184, 137, 42, 0.25);
  transition: all .2s ease;
}
.header-cta:hover {
  background: #a3781f;
  border-color: #a3781f;
  transform: translateY(-1px);
}
@media(max-width:850px) {
  .header-cta { padding: 6px 12px; font-size: 11px; }
}
@media(max-width:480px) {
  .header-cta { display: none; }
}

/* 🏨 스마트호텔 로그인 전용 폼 & 쇼케이스 */
.hotel-security-notes {
  margin-top: 22px;
  padding: 16px 20px;
  background: rgba(255, 255, 255, 0.75);
  border: 1px solid #dfd3ba;
  border-radius: 8px;
}
.hotel-security-notes p {
  font-size: 12.5px;
  color: var(--ink);
  line-height: 1.8;
  margin-bottom: 6px;
}
.hotel-security-notes p:last-child {
  margin-bottom: 0;
}
.hotel-security-notes strong {
  color: var(--navy);
  font-weight: 700;
}
.hotel-console-form {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: 14px;
}
.hotel-console-form .field {
  margin-bottom: 0;
}
.hotel-console-form label {
  display: block;
  font-size: 11.5px;
  font-weight: 600;
  color: var(--navy);
  margin-bottom: 5px;
}
.hotel-console-form input {
  background: #ffffff;
  border: 1px solid #cdd2cb;
  border-radius: 4px;
  padding: 9px 12px;
  font-size: 13px;
  min-height: 42px;
}
.hotel-console-form .button {
  margin-top: 6px;
  justify-content: center;
  gap: 10px;
  min-height: 46px;
}
.console-footer-note {
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid #edf0e6;
  font-size: 11px;
  color: var(--muted);
  line-height: 1.6;
}
.console-footer-note a {
  color: var(--navy);
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* 🏢 3열 피처 카드 그리드 (회사소개 및 스마트호텔) */
.feature-card-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 36px;
}
.feature-card {
  background: #ffffff;
  border: 1px solid #e2e5dc;
  border-radius: 10px;
  padding: 30px 24px;
  box-shadow: 0 4px 14px rgba(20, 44, 52, 0.03);
  transition: all .25s ease;
}
.feature-card:hover {
  transform: translateY(-3px);
  border-color: var(--gold-dark);
  box-shadow: 0 12px 28px rgba(20, 44, 52, 0.08);
}
.feature-card .fc-num {
  font-family: Georgia, serif;
  font-size: 24px;
  font-style: italic;
  font-weight: 700;
  color: var(--gold-dark);
  margin-bottom: 12px;
}
.feature-card h3 {
  font-size: 17px;
  font-weight: 700;
  color: var(--navy);
  margin-bottom: 10px;
  letter-spacing: -0.4px;
}
.feature-card p {
  font-size: 12.5px;
  color: var(--muted);
  line-height: 1.8;
  margin: 0;
}

/* 📱 반응형 미디어 쿼리 보완 */
@media(max-width:1150px) {
  .hero-content-grid {
    grid-template-columns: 1.1fr 0.9fr;
    gap: 32px;
  }
  .hero-bg-visual {
    width: 65%;
  }
}
@media(max-width:850px) {
  .page-visual-hero {
    min-height: auto;
  }
  .hero-content-grid {
    grid-template-columns: 1fr;
    gap: 32px;
    padding-top: 36px;
    padding-bottom: 44px;
  }
  .hero-bg-visual {
    width: 100%;
    opacity: 0.22;
    filter: blur(2.5px);
  }
  .hero-bg-mask {
    background: linear-gradient(180deg, rgba(251,248,240,0.92) 0%, rgba(251,248,240,0.98) 100%);
  }
  .header-action-badges {
    gap: 6px;
  }
  .feature-card-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .pc-break {
    display: none;
  }
}
@media(max-width:650px) {
  .header-action-badges {
    display: none;
  }
}

/* ==========================================================================
   🏛️ 회사소개 전용 에디토리얼 코퍼레이트 디자인 시스템 (About Corporate System)
   - 홈(영업/실시간 지표)과 100% 명확히 구분되는 품격 있는 기업 정체성
   ========================================================================== */
.breadcrumb-bar {
  padding-top: 20px;
  padding-bottom: 8px;
}
.breadcrumb {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  color: var(--muted);
}
.breadcrumb a {
  color: var(--ink);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.breadcrumb a:hover {
  color: var(--gold-dark);
}
.breadcrumb strong {
  color: var(--navy);
  font-weight: 700;
}

/* 회사소개 4대 핵심 역량 글래스모피즘 카드 (Hero 우측 배치) */
.corporate-capsule-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 14px;
}
.corporate-capsule-grid .capsule-item {
  background: rgba(255, 255, 255, 0.85);
  border: 1px solid rgba(20, 44, 52, 0.08);
  border-radius: 8px;
  padding: 12px 14px;
  display: flex;
  flex-direction: column;
}
.corporate-capsule-grid .cap-label {
  font-size: 11px;
  font-weight: 700;
  color: var(--gold-dark);
  margin-bottom: 4px;
}
.corporate-capsule-grid .capsule-item strong {
  font-size: 13px;
  font-weight: 700;
  color: var(--navy);
  line-height: 1.4;
}

.corporate-fact-strip {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  padding-top: 24px;
  border-top: 1px solid rgba(20,44,52,0.1);
}
.fact-pill {
  background: rgba(255,255,255,0.9);
  backdrop-filter: blur(8px);
  border: 1px solid #e2e5dc;
  border-radius: 8px;
  padding: 12px 14px;
  display: flex;
  flex-direction: column;
}
.fact-k {
  font-size: 10.5px;
  font-weight: 700;
  color: var(--gold-dark);
  margin-bottom: 3px;
  letter-spacing: 0.5px;
}
.fact-v {
  font-size: 13px;
  font-weight: 700;
  color: var(--navy);
  line-height: 1.4;
}

/* 3대 핵심 시공 통제 원칙 카드 그리드 */
.corporate-pillars-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 36px;
}
.pillar-card {
  background: #ffffff;
  border: 1px solid #e2e5dc;
  border-radius: 10px;
  padding: 34px 28px;
  box-shadow: 0 4px 14px rgba(20,44,52,0.03);
  transition: all .25s ease;
  display: flex;
  flex-direction: column;
}
.pillar-card:hover {
  transform: translateY(-3px);
  border-color: var(--gold-dark);
  box-shadow: 0 12px 28px rgba(20,44,52,0.08);
}
.pillar-num {
  font-family: Georgia, serif;
  font-size: 28px;
  font-style: italic;
  font-weight: 700;
  color: var(--gold-dark);
  margin-bottom: 12px;
}
.pillar-card h3 {
  font-size: 19px;
  font-weight: 700;
  color: var(--navy);
  margin-bottom: 8px;
  letter-spacing: -0.5px;
}
.pillar-lead {
  font-size: 13.5px;
  font-weight: 700;
  color: var(--gold-dark);
  margin-bottom: 12px;
  line-height: 1.5;
}
.pillar-desc {
  font-size: 13px;
  color: var(--muted);
  line-height: 1.8;
  margin-bottom: 20px;
}
.pillar-checklist {
  list-style: none;
  padding: 0;
  margin: auto 0 0 0;
  padding-top: 16px;
  border-top: 1px solid #edf0e6;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.pillar-checklist li {
  font-size: 12px;
  color: #47584f;
  line-height: 1.5;
  position: relative;
  padding-left: 16px;
}
.pillar-checklist li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: var(--gold-dark);
  font-weight: 700;
}

/* 직영 기술감리 파트너십 역할 분담 */
.partnership-roles-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  margin-top: 28px;
}
.role-box {
  background: #ffffff;
  border: 1px solid #dfd3ba;
  border-radius: 12px;
  padding: 34px 30px;
  box-shadow: 0 4px 16px rgba(20,44,52,0.03);
}
.role-box-header {
  margin-bottom: 20px;
  padding-bottom: 16px;
  border-bottom: 1px solid #edf0e6;
}
.role-badge {
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: 1.5px;
  color: var(--gold-dark);
  display: block;
  margin-bottom: 6px;
  text-transform: uppercase;
}
.role-badge.partner {
  color: #244650;
}
.role-box-header h3 {
  font-size: 20px;
  font-weight: 700;
  color: var(--navy);
  margin-bottom: 4px;
}
.role-box-header p {
  font-size: 13px;
  color: var(--muted);
  margin: 0;
}
.role-task-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.role-task-list li {
  font-size: 13px;
  color: #3f4e48;
  line-height: 1.6;
  position: relative;
  padding-left: 18px;
}
.role-task-list li::before {
  content: "—";
  position: absolute;
  left: 0;
  color: var(--gold-dark);
  font-weight: 700;
}
.role-task-list strong {
  color: var(--navy);
  font-weight: 700;
}

/* 기업 개요 원장 카드 및 테이블 */
.corporate-ledger-card {
  background: #ffffff;
  border: 1px solid #dfd3ba;
  border-radius: 10px;
  padding: 28px 32px;
  overflow-x: auto;
  box-shadow: 0 4px 16px rgba(20,44,52,0.03);
}
.corporate-info-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13.5px;
}
.corporate-info-table th {
  width: 22%;
  padding: 16px 20px 16px 0;
  text-align: left;
  font-weight: 700;
  color: var(--navy);
  border-bottom: 1px solid #edf0e6;
  vertical-align: top;
}
.corporate-info-table td {
  padding: 16px 0;
  color: #47584f;
  line-height: 1.8;
  border-bottom: 1px solid #edf0e6;
}
.corporate-info-table tr:last-child th,
.corporate-info-table tr:last-child td {
  border-bottom: none;
}

/* ==========================================================================
   🔲 사업분야 메인 선택 메뉴 그리드 (Service Hub Selector Grid)
   - /services/ 진입 시 중간에서 4개 공종으로 명쾌하게 분기
   ========================================================================== */
.service-hub-selector-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  margin-top: 32px;
}
.service-hub-selector-grid.three-cards,
.service-grid.three-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
@media (max-width: 1024px) {
  .service-hub-selector-grid.three-cards,
  .service-grid.three-cards {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
}
@media (max-width: 700px) {
  .service-hub-selector-grid.three-cards,
  .service-grid.three-cards {
    grid-template-columns: 1fr !important;
    gap: 18px;
  }
}
.hub-selector-card {
  background: #ffffff;
  border: 1px solid #e2e5dc;
  border-radius: 10px;
  padding: 28px 22px;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  box-shadow: 0 4px 14px rgba(20,44,52,0.03);
  transition: all .25s ease;
}
.hub-selector-card:hover {
  transform: translateY(-3px);
  border-color: var(--gold-dark);
  box-shadow: 0 12px 28px rgba(20,44,52,0.08);
}
.hub-selector-card.featured {
  background: linear-gradient(180deg, #fffefa 0%, #fbf9f4 100%);
  border-color: #d9b875;
}
.selector-card-num {
  font-family: Georgia, serif;
  font-size: 26px;
  font-style: italic;
  font-weight: 700;
  color: var(--gold-dark);
  margin-bottom: 12px;
}
.selector-domain-badge {
  font-size: 10.5px;
  font-weight: 700;
  color: var(--navy);
  letter-spacing: -0.2px;
  display: block;
  margin-bottom: 6px;
}
.hub-selector-card h3 {
  font-size: 18px;
  font-weight: 700;
  color: var(--navy);
  margin-bottom: 8px;
  line-height: 1.4;
  letter-spacing: -0.5px;
}
.hub-selector-card p {
  font-size: 12.5px;
  color: var(--muted);
  line-height: 1.75;
  margin-bottom: 20px;
  flex-grow: 1;
}
.selector-link-action {
  font-size: 12.5px;
  font-weight: 700;
  color: var(--navy);
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding-top: 14px;
  border-top: 1px solid #edf0e6;
  transition: color .2s ease;
}
.hub-selector-card:hover .selector-link-action {
  color: var(--gold-dark);
}

/* 다른 사업분야 빠른 둘러보기 컴포넌트 (각 서브페이지 하단 탑재) */
.other-services-section {
  padding: 48px 0;
  background: #fbf8f0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.other-services-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 24px;
}
.other-services-header h3 {
  font-size: 18px;
  font-weight: 700;
  color: var(--navy);
}
.other-services-header a {
  font-size: 12.5px;
  font-weight: 700;
  color: var(--navy);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.other-services-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.other-service-card {
  background: #ffffff;
  border: 1px solid #e2e5dc;
  border-radius: 8px;
  padding: 20px 18px;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  transition: all .2s ease;
}
.other-service-card:hover {
  border-color: var(--gold-dark);
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(20,44,52,0.06);
}
.other-service-num {
  font-family: Georgia, serif;
  font-size: 18px;
  font-style: italic;
  font-weight: 700;
  color: var(--gold-dark);
  margin-bottom: 4px;
}
.other-service-card h4 {
  font-size: 15px;
  font-weight: 700;
  color: var(--navy);
  margin-bottom: 6px;
}
.other-service-card p {
  font-size: 12px;
  color: var(--muted);
  line-height: 1.6;
  margin: 0;
}

/* 📱 반응형 미디어 쿼리 */
@media(max-width:1150px) {
  .service-hub-selector-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .corporate-fact-strip {
    grid-template-columns: repeat(2, 1fr);
  }
  .corporate-pillars-grid {
    grid-template-columns: 1fr;
  }
}
@media(max-width:850px) {
  .sub-hero-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .partnership-roles-grid {
    grid-template-columns: 1fr;
  }
  .other-services-grid {
    grid-template-columns: 1fr;
  }
  .corporate-info-table th {
    width: 30%;
  }
}
@media(max-width:650px) {
  .corporate-capsule-grid {
    grid-template-columns: 1fr;
  }
  .service-hub-selector-grid {
    grid-template-columns: 1fr;
  }
  .corporate-fact-strip {
    grid-template-columns: 1fr;
  }
}

/* ==========================================================================
   🏛️ 4대 핵심 사업분야 와이드 몰입형 헤더 & 세그먼트 탭 내비게이션 (OasisAI 벤치마킹)
   - 전역 헤더 활성 닷: • 사업분야
   - 상단 가로 세그먼트 탭: 4대 종합 / 01 시공 / 02 지원 / 03 금융 / 04 스마트호텔
   - 와이드 비주얼 헤더: 우측 블러 배경 이미지 & 좌측 에디토리얼 카피
   - 하이라이트 칩 스트립: 3대 핵심 포인트
   ========================================================================== */

/* 1. 상단 메인 메뉴 스타일 (점표시 제거, 제자리 색상 전환으로 레이아웃 흔들림 0px) */
#site-nav > a,
#site-nav .nav-item {
  color: #334155;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  transition: color 0.15s ease;
  position: relative;
  display: inline-flex;
  align-items: center;
}
#site-nav > a:hover,
#site-nav .nav-item:hover {
  color: #8B1538;
}
#site-nav > a.active,
#site-nav .nav-item.active {
  color: #8B1538 !important;
  font-weight: 700 !important;
}
/* 점표시(•) 영구 삭제 - 메뉴 가로 이동/흔들림 원천 방지 */
#site-nav > a.active::before,
#site-nav .nav-item.active::before {
  content: none !important;
  display: none !important;
}

.nav-services-container {
  position: relative;
  display: inline-flex;
  align-items: center;
}
.nav-chevron {
  display: inline-block;
  margin-left: 5px;
  vertical-align: 1px;
  color: inherit;
  opacity: 0.65;
  transition: transform 0.2s ease, opacity 0.2s ease;
}
.nav-services-container:hover .nav-chevron,
#site-nav .nav-item.active .nav-chevron {
  opacity: 1;
  transform: rotate(180deg);
}

/* 2. 4대 사업분야 가로 서브 내비게이션 바 (오직 사업분야 선택 시에만 노출 / 슬림 & 반투명 글래스모피즘) */
.site-header.has-subnav {
  border-bottom: none !important;
  background: rgba(255, 254, 250, 0.92);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
.site-header.has-subnav .header-inner {
  padding-bottom: 0px;
}
.service-subnav-bar {
  width: 100%;
  background: rgba(251, 248, 240, 0.55);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-top: 1px solid rgba(20, 44, 52, 0.04);
  border-bottom: 1px solid rgba(20, 44, 52, 0.06);
  padding: 2px 0 3px 0;
  display: block;
}
.service-subnav-inner {
  height: auto;
  min-height: 30px;
  display: flex !important;
  align-items: center;
  justify-content: center !important; /* 상단 메인 메뉴군 바로 밑 중앙 대칭 정렬 */
}
.service-subnav-items {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  overflow-x: auto;
  white-space: nowrap;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
  padding: 1px 0;
}
.service-subnav-items::-webkit-scrollbar {
  display: none;
}
.subnav-tab {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 3px 12px;
  font-size: 12.5px;
  font-weight: 500;
  color: #475569;
  background: transparent;
  border: 1.5px solid transparent;
  border-radius: 6px;
  text-decoration: none;
  transition: all 0.15s ease;
  line-height: 1.35;
}
.subnav-tab:hover {
  color: #8B1538;
  background: rgba(139, 21, 56, 0.04);
}
.subnav-tab.active {
  color: #8B1538 !important;
  font-weight: 700 !important;
  background: rgba(255, 255, 255, 0.85) !important;
  border: 1.5px solid #8B1538 !important; /* 오아시스AI 스타일 선명한 버건디 테두리 박스 */
  box-shadow: 0 1px 3px rgba(139, 21, 56, 0.08) !important;
}

/* 3. 와이드 몰입형 비주얼 헤더 상세 (위아래 높이 520px 완전 통일 및 경계선 완전 제거) */
.service-domain-hero,
.page-sub-hero,
.home-hero {
  min-height: 520px;
}
.service-domain-hero .service-hero-inner,
.page-sub-hero .sub-hero-grid,
.home-hero .hero-content-grid {
  padding-top: 0;
  padding-bottom: 0;
}
.hero-bg-visual,
.service-domain-hero .hero-bg-visual,
.home-hero .hero-bg-visual,
.page-sub-hero .hero-bg-visual {
  width: 65%;
  height: 100%;
  background-position: center right;
  opacity: 1 !important;
  filter: saturate(1.15) contrast(1.05) !important;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, transparent 12%, rgba(0,0,0,0.2) 28%, rgba(0,0,0,0.7) 50%, #000 75%, #000 100%);
  mask-image: linear-gradient(90deg, transparent 0%, transparent 12%, rgba(0,0,0,0.2) 28%, rgba(0,0,0,0.7) 50%, #000 75%, #000 100%);
}
.wide-hero-grid {
  grid-template-columns: 1fr;
  padding-top: 0;
  padding-bottom: 0;
}
.wide-hero-grid .hero-copy-column {
  max-width: 760px;
  width: 100%;
}
.wide-hero-grid h1 {
  font-size: clamp(28px, 3.4vw, 42px);
  line-height: 1.34;
  letter-spacing: -1.6px;
  color: var(--navy);
  margin-bottom: 18px;
}
.wide-hero-grid h1 span,
.home-hero h1 span,
.page-sub-hero h1 span {
  color: #8B1538; /* 경희대 크림슨 포인트 강조 */
  font-weight: 700;
}
.wide-hero-grid .hero-lead {
  font-size: 16px;
  font-weight: 600;
  color: #142c34;
  line-height: 1.65;
  margin-bottom: 12px;
}
.wide-hero-grid .hero-description {
  font-size: 13.5px;
  color: var(--muted);
  line-height: 1.8;
  margin-bottom: 24px;
}

/* 4. 3대 하이라이트 칩 스트립 */
.service-highlights-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
  padding-top: 20px;
  border-top: 1px dashed rgba(20, 44, 52, 0.12);
}
.hl-chip {
  display: inline-flex;
  flex-direction: column;
  padding: 8px 16px;
  background: rgba(255, 255, 255, 0.85);
  border: 1px solid rgba(20, 44, 52, 0.1);
  border-radius: 8px;
  box-shadow: 0 1px 4px rgba(20, 44, 52, 0.04);
}
.hl-chip strong {
  font-size: 12px;
  font-weight: 700;
  color: var(--navy);
  margin-bottom: 2px;
}
.hl-chip span {
  font-size: 11px;
  color: var(--muted);
}

/* 5. 모바일/반응형 튜닝 */
@media(max-width: 850px) {
  .service-hero-inner {
    padding-top: 24px;
    padding-bottom: 32px;
  }
  .service-subnav-inner {
    padding: 0 16px;
    min-height: 28px;
    height: auto;
  }
  .subnav-tab {
    padding: 2px 9px;
    font-size: 11.5px;
    gap: 4px;
  }
  .service-highlights-strip {
    gap: 8px;
  }
  .hl-chip {
    padding: 6px 12px;
  }
  .hl-chip strong {
    font-size: 11.5px;
  }
  .hl-chip span {
    font-size: 10.5px;
  }
}

/* ==========================================================================
   조직구성도 (오아시스빌드 직영 본부 체제 - 4대 전담 사업 부서 트리 구조)
   ========================================================================== */
.org-chart-section {
  padding: 80px 0;
  background: var(--paper);
}
.org-chart-wrapper {
  margin-top: 48px;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}
.org-control-tower {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 12px 28px;
  background: #ffffff;
  border: 2px solid var(--navy);
  border-radius: 9999px;
  box-shadow: 0 4px 16px rgba(20, 44, 52, 0.08);
  z-index: 2;
  position: relative;
}
.org-tower-icon {
  width: 26px;
  height: 26px;
  background: #8B1538;
  color: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  flex-shrink: 0;
}
.org-control-tower strong {
  font-size: 16px;
  font-weight: 700;
  color: var(--navy);
  letter-spacing: -0.3px;
}
/* 트리 연결선 */
.org-tree-lines {
  width: 100%;
  max-width: 1080px;
  position: relative;
  height: 48px;
}
.org-tree-stem {
  position: absolute;
  top: 0;
  left: 50%;
  width: 2px;
  height: 100%;
  background: #cbd5e1;
  transform: translateX(-50%);
}
.org-tree-stem::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 8px;
  height: 8px;
  background: #8B1538;
  border-radius: 50%;
  transform: translate(-50%, -50%);
}
.org-tree-bar {
  position: absolute;
  bottom: 0;
  left: 12.5%;
  right: 12.5%;
  height: 2px;
  background: #cbd5e1;
}
.org-tree-drop {
  position: absolute;
  bottom: -16px;
  width: 2px;
  height: 16px;
  background: #cbd5e1;
}
.org-tree-drop::after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 6px;
  height: 6px;
  background: #8B1538;
  border-radius: 50%;
  transform: translate(-50%, -50%);
}
.org-tree-drop.drop-1 { left: 12.5%; }
.org-tree-drop.drop-2 { left: 37.5%; }
.org-tree-drop.drop-3 { left: 62.5%; }
.org-tree-drop.drop-4 { left: 87.5%; }

/* 4대 부서 카드 그리드 */
.org-cards-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  width: 100%;
  max-width: 1200px;
  margin-top: 16px;
  position: relative;
  z-index: 2;
}
.org-team-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 24px 20px 20px;
  display: flex;
  flex-direction: column;
  box-shadow: 0 2px 10px rgba(20, 44, 52, 0.04);
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}
.org-team-card:hover {
  transform: translateY(-3px);
  border-color: #8B1538;
  box-shadow: 0 10px 24px rgba(139, 21, 56, 0.08);
}
.org-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
  gap: 8px;
}
.org-card-icon {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--navy);
  flex-shrink: 0;
}
.org-badge {
  font-size: 11px;
  font-weight: 600;
  color: #8B1538;
  background: rgba(139, 21, 56, 0.06);
  border: 1px solid rgba(139, 21, 56, 0.2);
  padding: 4px 8px;
  border-radius: 4px;
  white-space: nowrap;
}
.org-team-card h3 {
  font-size: 19px;
  font-weight: 700;
  color: var(--navy);
  letter-spacing: -0.4px;
  margin-bottom: 4px;
}
.org-team-role {
  font-size: 12px;
  color: #8B1538;
  font-weight: 600;
  margin-bottom: 14px;
}
.org-team-desc {
  font-size: 13px;
  line-height: 1.75;
  color: #475569;
  flex: 1;
  margin-bottom: 20px;
}
.org-card-footer {
  display: flex;
  gap: 6px;
  padding-top: 14px;
  border-top: 1px solid #f1f5f9;
  flex-wrap: wrap;
}
.org-pill {
  font-size: 10.5px;
  font-weight: 600;
  color: #64748b;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  padding: 4px 8px;
  border-radius: 4px;
  white-space: nowrap;
}

@media(max-width: 1050px) {
  .org-cards-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .org-tree-lines {
    display: none;
  }
}
@media(max-width: 650px) {
  .org-cards-grid {
    grid-template-columns: 1fr;
    margin-top: 24px;
  }
}

/* ==========================================================================
   오아시스AI 스타일 사업실적 페이지 (Cases Layout System)
   - 화사하고 밝은 오프화이트 / 연베이지 글래스모피즘
   - 어두운 배경 블록 100% 금지 준수
   ========================================================================== */

/* 1. 와이드 히어로 섹션 */
.cases-hero-oasis {
  background: linear-gradient(135deg, #fdfbf7 0%, #f6f2e9 100%);
  border-bottom: 1px solid rgba(20, 44, 52, 0.08);
  padding: 56px 0 64px;
}
.cases-hero-container {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 40px;
  align-items: center;
}
.cases-hero-headline {
  font-size: clamp(30px, 3.2vw, 44px);
  font-weight: 700;
  line-height: 1.35;
  color: var(--navy-deep, #10242b);
  letter-spacing: -1.5px;
  margin-bottom: 16px;
}
.cases-hero-headline span {
  color: var(--gold-dark, #87612b);
}
.cases-hero-desc {
  font-size: 15px;
  color: #475569;
  line-height: 1.85;
  margin-bottom: 24px;
}
.cases-stat-card {
  background: #ffffff;
  border: 1px solid rgba(20, 44, 52, 0.12);
  border-radius: 12px;
  padding: 22px 26px;
  box-shadow: 0 6px 20px rgba(20, 44, 52, 0.04);
  max-width: 480px;
}
.stat-pill-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #ecfdf5;
  border: 1px solid #a7f3d0;
  color: #047857;
  font-size: 11.5px;
  font-weight: 700;
  padding: 4px 12px;
  border-radius: 9999px;
  margin-bottom: 10px;
}
.stat-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #10b981;
  display: inline-block;
}
.stat-sep {
  color: #6ee7b7;
}
.stat-sync {
  color: #059669;
  font-weight: 600;
}
.stat-number-row {
  display: flex;
  align-items: baseline;
  gap: 4px;
}
.stat-number {
  font-size: 48px;
  font-weight: 800;
  color: #0f172a;
  line-height: 1.1;
  font-family: var(--sans);
}
.stat-unit {
  font-size: 24px;
  font-weight: 700;
  color: var(--gold-dark, #87612b);
}
.stat-metrics-sub {
  font-size: 12px;
  color: #64748b;
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid #f1f5f9;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
.dot-sep {
  color: #cbd5e1;
}
.hero-image-blend-wrap {
  position: relative;
  height: 330px;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 16px 36px rgba(20, 44, 52, 0.08);
  border: 1px solid rgba(20, 44, 52, 0.08);
  background: #fff;
}
.hero-blend-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.hero-gradient-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, rgba(253, 251, 247, 0.9) 0%, rgba(253, 251, 247, 0.25) 35%, transparent 65%);
  pointer-events: none;
}

/* 2. 공통 센터 헤딩 */
.section-center-heading {
  text-align: center;
  margin-bottom: 36px;
}
.pill-badge-center {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #fdf8eb;
  border: 1px solid #f3e4bc;
  color: var(--gold-dark, #87612b);
  font-size: 11.5px;
  font-weight: 700;
  padding: 5px 14px;
  border-radius: 9999px;
  margin-bottom: 12px;
}
.section-main-title {
  font-size: clamp(26px, 2.5vw, 34px);
  color: var(--navy-deep, #10242b);
  font-weight: 700;
  letter-spacing: -1px;
}
.section-sub-copy {
  font-size: 14.5px;
  color: #64748b;
  margin-top: 8px;
}

/* 3. 주요 프라임 실적 좌에서 우로 무한 마키 롤링 트랙 & 카드별 슬라이더 */
@keyframes marqueeLeftToRight {
  0% {
    transform: translateX(-33.333333%);
  }
  100% {
    transform: translateX(0%);
  }
}

.prime-showcase-section {
  padding-top: 60px;
  padding-bottom: 56px;
  overflow: hidden;
  position: relative;
}

/* 2.1 프라임 스테이지 래퍼 및 대형 좌·우 전체 실적 내비게이션 화살표 */
.prime-stage-wrapper {
  position: relative;
  width: 100%;
  max-width: 100%;
}

.prime-global-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.94);
  border: 2px solid rgba(217, 184, 117, 0.6);
  color: var(--navy-deep, #10242b);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 25;
  cursor: pointer;
  box-shadow: 0 8px 24px rgba(20, 44, 52, 0.12), 0 2px 6px rgba(217, 184, 117, 0.25);
  backdrop-filter: blur(10px);
  transition: transform 0.22s cubic-bezier(0.2, 0.8, 0.2, 1), background 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
  user-select: none;
  padding: 0;
}

.prime-global-arrow svg {
  display: block;
  stroke: var(--navy-deep, #10242b);
  transition: stroke 0.2s ease;
}

.prime-global-arrow.prev {
  left: 24px;
}

.prime-global-arrow.next {
  right: 24px;
}

.prime-global-arrow:hover {
  background: var(--gold, #d9b875);
  border-color: var(--gold, #d9b875);
  transform: translateY(-50%) scale(1.12);
  box-shadow: 0 12px 32px rgba(217, 184, 117, 0.48), 0 4px 10px rgba(20, 44, 52, 0.15);
}

.prime-global-arrow:hover svg {
  stroke: #10242b;
}

.prime-global-arrow:active {
  transform: translateY(-50%) scale(0.96);
}

@media (max-width: 768px) {
  .prime-global-arrow {
    width: 44px;
    height: 44px;
  }
  .prime-global-arrow.prev {
    left: 8px;
  }
  .prime-global-arrow.next {
    right: 8px;
  }
  .prime-global-arrow svg {
    width: 22px;
    height: 22px;
  }
  .prime-controls-bar {
    border-radius: 16px;
    justify-content: center;
  }
  .prime-pills-nav {
    justify-content: center;
  }
}

.prime-marquee-viewport {
  width: 100%;
  overflow: hidden;
  position: relative;
  padding: 16px 0 28px;
  -webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 3%, #000 97%, transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0%, #000 3%, #000 97%, transparent 100%);
}

.prime-marquee-track {
  display: flex;
  gap: 24px;
  width: max-content;
  animation: marqueeLeftToRight 42s linear infinite;
  will-change: transform;
  transition: transform 0.45s cubic-bezier(0.25, 1, 0.5, 1);
}

.prime-marquee-viewport:hover .prime-marquee-track,
.prime-marquee-track:hover,
.prime-marquee-track.is-paused {
  animation-play-state: paused;
}

.prime-marquee-track.is-manual {
  animation: none !important;
}

.prime-card {
  flex: 0 0 340px;
  width: 340px;
  background: #ffffff;
  border: 1px solid rgba(20, 44, 52, 0.1);
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 4px 16px rgba(20, 44, 52, 0.05);
  display: flex;
  flex-direction: column;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
  user-select: none;
}

.prime-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 36px rgba(20, 44, 52, 0.12);
  border-color: var(--gold, #d9b875);
}

.prime-card-media {
  position: relative;
  width: 100%;
  height: 220px;
  overflow: hidden;
  background: #f1f5f9;
}

.prime-photo-counter-badge {
  position: absolute;
  top: 10px;
  left: 12px;
  background: rgba(20, 44, 52, 0.72);
  color: #ffffff;
  font-size: 11px;
  font-weight: 700;
  padding: 3px 8px;
  border-radius: 9999px;
  backdrop-filter: blur(4px);
  border: 1px solid rgba(255, 255, 255, 0.35);
  pointer-events: none;
  z-index: 9;
  letter-spacing: 0.5px;
}

.prime-photo-slides {
  position: relative;
  width: 100%;
  height: 100%;
}

.prime-slide-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transition: opacity 0.35s ease;
  pointer-events: none;
}

.prime-slide-img.active {
  opacity: 1;
  pointer-events: auto;
}

.prime-card:hover .prime-slide-img.active {
  transform: scale(1.03);
  transition: transform 0.4s ease, opacity 0.35s ease;
}

.prime-photo-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: rgba(20, 44, 52, 0.72);
  color: #ffffff;
  border: 1px solid rgba(255, 255, 255, 0.4);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  line-height: 1;
  font-weight: 700;
  cursor: pointer;
  z-index: 10;
  transition: all 0.2s ease;
  backdrop-filter: blur(4px);
  opacity: 0.85;
  user-select: none;
  padding: 0;
}

.prime-photo-nav:hover {
  background: var(--gold, #d9b875);
  color: #142c34;
  border-color: var(--gold, #d9b875);
  opacity: 1;
  transform: translateY(-50%) scale(1.12);
}

.prime-photo-nav.prev {
  left: 10px;
}

.prime-photo-nav.next {
  right: 10px;
}

.prime-watermark {
  position: absolute;
  top: 10px;
  right: 12px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.5px;
  color: rgba(255, 255, 255, 0.75);
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
  pointer-events: none;
  z-index: 8;
}

.prime-dots-indicator {
  position: absolute;
  bottom: 8px;
  left: 0;
  right: 0;
  display: flex;
  justify-content: center;
  gap: 6px;
  z-index: 10;
}

.prime-dots-indicator .dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.55);
  cursor: pointer;
  transition: all 0.2s ease;
}

.prime-dots-indicator .dot.active {
  background: #ffffff;
  width: 16px;
  border-radius: 4px;
}

.prime-card-body {
  padding: 18px 20px 20px;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.prime-tag {
  font-size: 11px;
  font-weight: 700;
  color: var(--gold-dark, #87612b);
  margin-bottom: 6px;
  display: inline-block;
}

.prime-card-title {
  font-size: 15px;
  font-weight: 700;
  color: var(--navy-deep, #10242b);
  line-height: 1.45;
  margin-bottom: 8px;
}

.prime-card-desc {
  font-size: 12.5px;
  color: #475569;
  line-height: 1.6;
  margin-bottom: 14px;
}

.prime-card-meta {
  margin-top: auto;
  padding-top: 10px;
  border-top: 1px solid #f1f5f9;
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: 11px;
  color: #64748b;
}

/* 4. 성공 실적 아카이브 데이터 테이블 */
.archive-table-section {
  padding-top: 48px;
  padding-bottom: 80px;
}
.archive-table-filter-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin-bottom: 20px;
  flex-wrap: wrap;
}
.filter-pills-group {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.filter-pill {
  padding: 8px 18px;
  border-radius: 9999px;
  background: #ffffff;
  border: 1px solid #cbd5e1;
  font-size: 12.5px;
  font-weight: 600;
  color: #475569;
  cursor: pointer;
  transition: all 0.2s ease;
}
.filter-pill:hover {
  border-color: var(--gold-dark, #87612b);
  color: var(--navy, #142c34);
}
.filter-pill.active {
  background: var(--navy, #142c34);
  color: #ffffff;
  border-color: var(--navy, #142c34);
  box-shadow: 0 2px 8px rgba(20, 44, 52, 0.15);
}
.filter-region-group {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12.5px;
  font-weight: 600;
  color: #475569;
}
.filter-region-select {
  padding: 8px 12px;
  border-radius: 6px;
  border: 1px solid #cbd5e1;
  background: #ffffff;
  font-size: 12.5px;
  color: #334155;
  cursor: pointer;
}
.archive-table-card {
  background: #ffffff;
  border: 1px solid rgba(20, 44, 52, 0.1);
  border-radius: 14px;
  padding: 24px 28px;
  box-shadow: 0 6px 20px rgba(20, 44, 52, 0.04);
}
.oasis-data-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13.5px;
}
.oasis-data-table th {
  padding: 14px 18px;
  background: #f8fafc;
  border-bottom: 2px solid #e2e8f0;
  color: #475569;
  font-size: 13px;
  font-weight: 700;
  text-align: left;
}
.oasis-data-table td {
  padding: 16px 18px;
  border-bottom: 1px solid #f1f5f9;
  vertical-align: middle;
}
.table-row-item:hover td {
  background: #faf8f3;
}
.company-wrap {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.company-name {
  font-size: 14.5px;
  font-weight: 700;
  color: #0f172a;
}
.project-scope-hint {
  font-size: 12px;
  color: #64748b;
  line-height: 1.4;
}
.table-cat-badge {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 9999px;
  background: #f1f5f9;
  color: #334155;
  font-size: 11.5px;
  font-weight: 600;
  white-space: nowrap;
}
.location-text {
  font-size: 12.5px;
  color: #475569;
  white-space: nowrap;
}
.status-done-pill {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 12px;
  border-radius: 9999px;
  background: #ecfdf5;
  border: 1px solid #a7f3d0;
  color: #059669;
  font-size: 11.5px;
  font-weight: 700;
  white-space: nowrap;
}
.status-check-svg {
  flex-shrink: 0;
}
.table-pagination-container {
  display: flex;
  justify-content: center;
  margin-top: 24px;
  padding-top: 16px;
  border-top: 1px solid #f1f5f9;
}
.pagination-nav {
  display: flex;
  align-items: center;
  gap: 6px;
}
.page-numbers-group {
  display: flex;
  align-items: center;
  gap: 6px;
}
.page-num, .page-arrow {
  width: 34px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  border: 1px solid #e2e8f0;
  background: #ffffff;
  font-size: 12.5px;
  font-weight: 600;
  color: #475569;
  cursor: pointer;
  transition: all 0.15s ease;
}
.page-num:hover, .page-arrow:hover:not(:disabled) {
  background: #f8fafc;
  border-color: #cbd5e1;
  color: var(--navy, #142c34);
}
.page-num.active {
  background: var(--navy, #142c34);
  color: #ffffff;
  border-color: var(--navy, #142c34);
  font-weight: 700;
}
.page-arrow:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}
.table-privacy-notice {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 18px;
  padding: 12px 18px;
  background: #fdfbf7;
  border: 1px solid #f4eee2;
  border-radius: 6px;
  font-size: 12px;
  color: #64748b;
}

/* 5. 우측 하단 견적/상담 문의 플로팅 버튼 */
.floating-contact-btn {
  position: fixed;
  bottom: 32px;
  right: 32px;
  z-index: 90;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 22px;
  border-radius: 9999px;
  background: linear-gradient(135deg, #8B1538 0%, #6e0f2b 100%);
  color: #ffffff;
  font-size: 13.5px;
  font-weight: 700;
  box-shadow: 0 8px 24px rgba(139, 21, 56, 0.35);
  text-decoration: none;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.floating-contact-btn:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 30px rgba(139, 21, 56, 0.45);
  color: #ffffff;
}

/* 반응형 미디어 쿼리 */
@media (max-width: 1100px) {
  .archive-table-filter-bar {
    gap: 12px;
  }
}
@media (max-width: 650px) {
  .prime-card {
    flex: 0 0 285px;
    width: 285px;
  }
  .prime-card-media {
    height: 185px;
  }
  .archive-table-filter-bar {
    flex-direction: column;
    align-items: stretch;
  }
  .filter-pills-group {
    justify-content: flex-start;
    overflow-x: auto;
    padding-bottom: 4px;
  }
  .floating-contact-btn {
    bottom: 20px;
    right: 20px;
    padding: 11px 18px;
    font-size: 12.5px;
  }
  .archive-table-card {
    padding: 16px;
  }
  .oasis-data-table th, .oasis-data-table td {
    padding: 12px 10px;
  }
}

/* ==========================================================================
   🏛️ 모바일 프리미엄 네비게이션 드로어 & 하단 고정 퀵 액션 바 시스템
   ========================================================================== */
.drawer-backdrop {
  display: none;
}
.drawer-header {
  display: none;
}
.drawer-footer {
  display: none;
}
.mobile-sticky-bar {
  display: none;
}

/* 태블릿 및 모바일 (max-width: 850px) : 우측 슬라이드인 글래스 드로어 */
@media (max-width: 850px) {
  body.drawer-open {
    overflow: hidden !important;
    touch-action: none;
  }
  .drawer-backdrop {
    display: block;
    position: fixed;
    inset: 0;
    background: rgba(20, 44, 52, 0.45);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    z-index: 998;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.25s ease;
  }
  .drawer-backdrop.is-active {
    opacity: 1;
    pointer-events: auto;
  }
  #site-nav {
    display: flex !important;
    position: fixed !important;
    top: 0 !important;
    right: -330px !important;
    bottom: 0 !important;
    left: auto !important;
    width: 310px !important;
    max-width: 86vw !important;
    height: 100vh !important;
    background: #ffffff !important;
    box-shadow: -8px 0 36px rgba(20, 44, 52, 0.16) !important;
    z-index: 999 !important;
    flex-direction: column !important;
    align-items: stretch !important;
    padding: 0 0 24px 0 !important;
    margin: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    gap: 0 !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1) !important;
  }
  #site-nav.is-open {
    transform: translateX(-330px) !important;
  }
  .drawer-header {
    display: flex !important;
    justify-content: space-between;
    align-items: center;
    padding: 20px 22px;
    border-bottom: 1px solid #eef0ea;
    background: #fdfbf8;
  }
  .drawer-logo-text {
    font-size: 16px;
    font-weight: 800;
    letter-spacing: 2px;
    color: var(--navy);
  }
  .drawer-close-btn {
    background: none;
    border: 1px solid #dcded5;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    color: var(--navy);
    cursor: pointer;
    transition: all 0.2s ease;
  }
  .drawer-close-btn:active {
    background: #f0f1ec;
    transform: scale(0.94);
  }
  #site-nav > a.nav-item,
  #site-nav > div > a.nav-item {
    padding: 15px 22px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: var(--navy) !important;
    border-bottom: 1px solid #f2f4ee !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    text-decoration: none !important;
    transition: background 0.15s ease !important;
  }
  #site-nav > a.nav-item:active,
  #site-nav > div > a.nav-item:active {
    background: #f7f5ee !important;
  }
  #site-nav > a.nav-item.active {
    color: var(--gold-dark) !important;
    font-weight: 800 !important;
    background: #fffefa !important;
    border-left: 3px solid var(--gold-dark) !important;
  }
  .nav-badge-item {
    background: #fbf9f2;
  }
  .nav-rec-badge {
    font-size: 10.5px;
    font-weight: 700;
    color: #ffffff;
    background: var(--crimson);
    padding: 2px 7px;
    border-radius: 4px;
    letter-spacing: 0.5px;
  }
  .drawer-footer {
    display: flex !important;
    flex-direction: column;
    padding: 20px 22px;
    gap: 12px;
    margin-top: auto;
    background: #fdfbf8;
    border-top: 1px solid #edf0e6;
  }
  .drawer-call-card {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 16px;
    background: linear-gradient(135deg, #8B1538 0%, #6e0f2b 100%);
    border-radius: 10px;
    color: #ffffff;
    text-decoration: none;
    box-shadow: 0 4px 14px rgba(139, 21, 56, 0.25);
    transition: transform 0.2s ease;
  }
  .drawer-call-card:active {
    transform: scale(0.98);
  }
  .drawer-call-icon {
    font-size: 20px;
  }
  .drawer-call-info {
    display: flex;
    flex-direction: column;
    flex: 1;
  }
  .drawer-call-info strong {
    font-size: 13.5px;
    font-weight: 700;
    line-height: 1.3;
  }
  .drawer-call-info small {
    font-size: 11px;
    opacity: 0.85;
    margin-top: 2px;
  }
  .drawer-call-arrow {
    font-size: 16px;
    font-weight: 700;
  }
  .drawer-crm-link {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 14px;
    background: #ffffff;
    border: 1px solid #dfd3ba;
    border-radius: 8px;
    font-size: 12.5px;
    font-weight: 700;
    color: var(--navy);
    text-decoration: none;
    box-shadow: 0 2px 6px rgba(20, 44, 52, 0.04);
  }
  .drawer-crm-link:active {
    background: #f7f5ee;
  }
}

/* 모바일 전용 (max-width: 650px) : 하단 고정 퀵 액션 바 */
@media (max-width: 650px) {
  body {
    padding-bottom: 60px !important;
  }
  .floating-contact-btn {
    bottom: 74px !important;
  }
  .mobile-sticky-bar {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 58px !important;
    background: rgba(255, 255, 255, 0.96) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    border-top: 1px solid #e2e5dc !important;
    box-shadow: 0 -4px 18px rgba(20, 44, 52, 0.08) !important;
    z-index: 990 !important;
    padding-bottom: env(safe-area-inset-bottom, 0px) !important;
  }
  .mobile-sticky-item {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 3px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: var(--navy) !important;
    text-decoration: none !important;
    border-right: 1px solid #f0f2eb !important;
    transition: background 0.15s ease !important;
    user-select: none;
  }
  .mobile-sticky-item:last-child {
    border-right: none !important;
  }
  .mobile-sticky-item:active {
    background: #f7f5ee !important;
  }
  .mobile-sticky-item.call-action {
    color: var(--gold-dark) !important;
  }
  .mobile-sticky-item.call-action svg {
    color: var(--gold-dark) !important;
  }
  .mobile-sticky-item.feat-action {
    color: var(--navy) !important;
  }
  .mobile-sticky-item.feat-action svg {
    color: var(--gold-dark) !important;
  }
  .mobile-sticky-item.primary-action {
    color: var(--crimson) !important;
  }
  .mobile-sticky-item.primary-action svg {
    color: var(--crimson) !important;
  }
}

/* === GOV-TECH 원클릭 정책지원금 & 패키지 진단기 (No Dark Blocks / Gold Glassmorphism) === */
.govtech-section {
  padding: 40px 0 20px;
}
.govtech-card-container {
  background: linear-gradient(180deg, #fdfbf7 0%, #ffffff 100%);
  border: 1px solid rgba(214, 184, 121, 0.35);
  border-radius: 16px;
  padding: 36px 32px;
  box-shadow: 0 10px 30px rgba(135, 97, 43, 0.05);
}
.govtech-header {
  text-align: center;
  max-width: 780px;
  margin: 0 auto 28px;
}
.govtech-badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 5px 14px;
  background: rgba(214, 184, 121, 0.15);
  border: 1px solid rgba(214, 184, 121, 0.4);
  border-radius: 20px;
  font-size: 11.5px;
  font-weight: 700;
  color: #87612b;
  margin-bottom: 12px;
  letter-spacing: 0.2px;
}
.pulse-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #059669;
  box-shadow: 0 0 0 2px rgba(5, 150, 105, 0.2);
  animation: pulseGreen 2s infinite ease-in-out;
}
.govtech-header h2 {
  font-size: clamp(22px, 2.6vw, 30px);
  font-weight: 700;
  color: #142c34;
  margin-bottom: 10px;
  letter-spacing: -0.02em;
}
.govtech-subtitle {
  font-size: 13.5px;
  color: var(--muted);
  line-height: 1.65;
  margin: 0;
}
.govtech-form-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  margin-bottom: 18px;
}
.govtech-input-group label {
  display: block;
  font-size: 12px;
  font-weight: 600;
  color: #475569;
  margin-bottom: 6px;
}
.govtech-select {
  width: 100%;
  height: 42px;
  padding: 0 12px;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  font-size: 13px;
  background: #ffffff;
  color: #0f172a;
  cursor: pointer;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.govtech-select:focus {
  outline: none;
  border-color: #87612b;
  box-shadow: 0 0 0 3px rgba(214, 184, 121, 0.2);
}
.govtech-action-bar {
  margin-bottom: 28px;
}
.govtech-calc-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  height: 46px;
  background: linear-gradient(135deg, #87612b 0%, #b8860b 100%);
  color: #ffffff;
  font-size: 14.5px;
  font-weight: 700;
  border: none;
  border-radius: 8px;
  box-shadow: 0 4px 14px rgba(135, 97, 43, 0.22);
  cursor: pointer;
  transition: all 0.2s ease;
}
.govtech-calc-btn:hover {
  background: linear-gradient(135deg, #9a7033 0%, #c89518 100%);
  box-shadow: 0 6px 18px rgba(135, 97, 43, 0.3);
  transform: translateY(-1px);
}
.govtech-calc-btn .btn-arrow {
  font-size: 16px;
}
.govtech-result-box {
  animation: fadeIn 0.3s ease;
}
.govtech-summary-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-bottom: 24px;
}
.result-stat-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 20px 18px;
  text-align: center;
  transition: transform 0.15s ease;
}
.result-stat-card.highlight {
  border-color: rgba(214, 184, 121, 0.6);
  background: #fffdfa;
  box-shadow: 0 4px 16px rgba(135, 97, 43, 0.08);
}
.stat-badge {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  padding: 2px 9px;
  border-radius: 12px;
}
.stat-badge.green { background: #ecfdf5; color: #047857; }
.stat-badge.gold { background: #fef3c7; color: #92400e; }
.stat-badge.blue { background: #eff6ff; color: #1e40af; }
.stat-num {
  font-size: 26px;
  font-weight: 800;
  color: #142c34;
  margin: 8px 0 4px;
  letter-spacing: -0.02em;
}
.result-stat-card.highlight .stat-num {
  color: #87612b;
}
.stat-label {
  font-size: 12px;
  color: #64748b;
  line-height: 1.4;
}
.govtech-packages-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin-bottom: 24px;
}
.package-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 24px 20px;
  display: flex;
  flex-direction: column;
  position: relative;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.package-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06);
}
.package-card.featured {
  border: 2px solid #c6ad75;
  background: #fffefa;
  box-shadow: 0 6px 20px rgba(135, 97, 43, 0.1);
}
.package-ribbon {
  position: absolute;
  top: -11px;
  right: 18px;
  background: #87612b;
  color: #ffffff;
  font-size: 10.5px;
  font-weight: 700;
  padding: 2px 10px;
  border-radius: 10px;
}
.package-tag {
  font-size: 11px;
  font-weight: 700;
  color: #64748b;
  margin-bottom: 8px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.package-tag.gold {
  color: #87612b;
}
.package-card h4 {
  font-size: 16px;
  font-weight: 700;
  color: #142c34;
  margin: 0 0 6px;
}
.pkg-desc {
  font-size: 12px;
  color: #64748b;
  line-height: 1.5;
  margin: 0 0 14px;
  min-height: 36px;
}
.pkg-pricing {
  background: #f8fafc;
  border-radius: 8px;
  padding: 14px;
  margin: 0 0 16px;
  border: 1px solid #f1f5f9;
}
.pkg-total, .pkg-grant, .pkg-final {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 12px;
  padding: 3px 0;
}
.pkg-total .label, .pkg-grant .label { color: #64748b; }
.pkg-grant .val { color: #059669; font-weight: 700; }
.pkg-final {
  border-top: 1px dashed #cbd5e1;
  margin-top: 6px;
  padding-top: 8px;
}
.pkg-final .label { font-weight: 600; color: #142c34; }
.pkg-final .val { font-size: 18px; font-weight: 800; color: #87612b; }
.pkg-features {
  list-style: none;
  padding: 0;
  margin: 0 0 20px;
  flex: 1;
}
.pkg-features li {
  font-size: 12px;
  color: #334155;
  padding: 4px 0 4px 18px;
  position: relative;
  line-height: 1.45;
}
.pkg-features li:before {
  content: "✓";
  position: absolute;
  left: 0;
  color: #87612b;
  font-weight: 700;
}
.pkg-select-btn {
  width: 100%;
  height: 38px;
  border: 1px solid #cbd5e1;
  background: #ffffff;
  color: #334155;
  font-size: 12.5px;
  font-weight: 600;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.15s ease;
  margin-top: auto;
}
.pkg-select-btn:hover {
  background: #f1f5f9;
  border-color: #94a3b8;
  color: #0f172a;
}
.pkg-select-btn.primary {
  background: #87612b;
  color: #ffffff;
  border-color: #87612b;
  font-weight: 700;
}
.pkg-select-btn.primary:hover {
  background: #9a7033;
}
.capital-stack-card {
  background: #fbfbf8;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 24px;
  margin-bottom: 24px;
}
.capital-stack-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 16px;
}
.sub-badge {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  color: #87612b;
  letter-spacing: 0.5px;
  margin-bottom: 4px;
}
.capital-stack-head h4 {
  font-size: 16px;
  font-weight: 700;
  color: #142c34;
  margin: 0 0 4px;
}
.capital-stack-head p {
  font-size: 12px;
  color: #64748b;
  margin: 0;
  line-height: 1.5;
}
.capital-summary-badge {
  flex-shrink: 0;
  background: #ffffff;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  padding: 10px 14px;
  text-align: right;
}
.capital-summary-badge span {
  display: block;
  font-size: 11px;
  color: #64748b;
}
.capital-summary-badge strong {
  display: block;
  font-size: 17px;
  font-weight: 800;
  color: #d97706;
  margin-top: 2px;
}
.stack-bar-wrap {
  height: 38px;
  border-radius: 8px;
  overflow: hidden;
  display: flex;
  margin: 16px 0;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}
.stack-bar-segment {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  font-size: 11.5px;
  font-weight: 700;
  transition: width 0.4s ease;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 0 6px;
}
.stack-bar-segment.grant { background: #10b981; }
.stack-bar-segment.loan { background: #3b82f6; }
.stack-bar-segment.self { background: #f59e0b; }
.stack-legend-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-top: 14px;
}
.legend-item {
  display: flex;
  gap: 10px;
  align-items: flex-start;
}
.legend-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  flex-shrink: 0;
  margin-top: 4px;
}
.legend-dot.green { background: #10b981; }
.legend-dot.blue { background: #3b82f6; }
.legend-dot.orange { background: #f59e0b; }
.legend-item strong {
  display: block;
  font-size: 12px;
  color: #142c34;
  margin-bottom: 2px;
}
.legend-item p {
  font-size: 11px;
  color: #64748b;
  line-height: 1.4;
  margin: 0;
}
.start-gate-compliance {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  background: rgba(214, 184, 121, 0.1);
  border: 1px solid rgba(214, 184, 121, 0.3);
  border-radius: 8px;
  padding: 12px 14px;
  margin-top: 18px;
  font-size: 12px;
  color: #5a421b;
  line-height: 1.5;
}
.start-gate-compliance svg {
  flex-shrink: 0;
  margin-top: 2px;
}
.govtech-bottom-action {
  text-align: center;
  padding-top: 12px;
}
.govtech-bottom-action p {
  font-size: 13.5px;
  color: #475569;
  margin: 0 0 14px;
}
.govtech-bottom-action p strong {
  color: #142c34;
}

/* Gov-Tech Calculator Responsive */
@media (max-width: 1024px) {
  .govtech-form-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .govtech-packages-grid {
    grid-template-columns: 1fr;
  }
  .capital-stack-head {
    flex-direction: column;
  }
  .capital-summary-badge {
    text-align: left;
    width: 100%;
  }
}
@media (max-width: 680px) {
  .govtech-card-container {
    padding: 24px 16px;
  }
  .govtech-form-grid {
    grid-template-columns: 1fr;
  }
  .govtech-summary-grid {
    grid-template-columns: 1fr;
  }
  .stack-legend-grid {
    grid-template-columns: 1fr;
  }
  .stat-num {
    font-size: 22px;
  }
}

/* ==========================================================================
   🏛️ 하단 푸터(Footer) 정리 및 좌우 균형 정렬 시스템
   ========================================================================== */
.site-footer {
  background: var(--navy-deep);
  color: #d9e1de;
  padding: 40px 0 26px;
}
.footer-nav-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  padding: 0 0 26px 0;
  border-bottom: 1px solid #334a4d;
  font-size: 12px;
  width: 100%;
}
.footer-nav-grid strong {
  color: var(--gold);
  display: block;
  margin-bottom: 10px;
  font-size: 12.5px;
  font-weight: 700;
}
.footer-nav-grid ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 6px;
}
.footer-nav-grid li a {
  color: rgba(255, 255, 255, 0.84);
  text-decoration: none;
  transition: color 0.15s ease;
}
.footer-nav-grid li a:hover {
  color: var(--gold);
}

.site-footer .footer-meta {
  border-top: none;
  padding-top: 24px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 18px;
  width: 100%;
}
.site-footer .footer-meta > .footer-company-info {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  gap: 28px;
  flex-wrap: wrap;
  font-size: 12px;
  color: rgba(255, 255, 255, 0.82);
}
.site-footer .footer-brand {
  color: #eef0e8;
  flex-shrink: 0;
}
.site-footer .footer-brand .brand-symbol {
  color: #c6ad75;
}
.site-footer .footer-brand .brand-sub {
  color: #c6ad75;
  font-weight: 600;
  margin-top: 5px;
}
.site-footer .footer-info-col {
  display: flex;
  flex-direction: column;
  gap: 2px;
  line-height: 1.55;
  font-size: 12px;
  color: rgba(255, 255, 255, 0.82);
}
.site-footer .footer-info-col p {
  margin: 0;
}
.site-footer .footer-info-col strong {
  color: #ffffff;
  font-weight: 700;
}
.site-footer .footer-contact-col .footer-tel-row {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 0;
}
.site-footer .footer-contact-col .footer-tel-row a {
  color: var(--gold);
  font-weight: 700;
  text-decoration: none;
}
.site-footer .footer-contact-col .footer-email-row {
  margin: 0;
}
.site-footer .footer-contact-col .footer-email-row a {
  color: rgba(255, 255, 255, 0.9);
  text-decoration: none;
}
.site-footer .footer-contact-col .footer-email-row a:hover {
  color: var(--gold);
  text-decoration: underline;
}
.site-footer .footer-cta-link {
  flex-shrink: 0;
  font-size: 12px;
  font-weight: 600;
  color: #f5f1e8;
  border-bottom: 1px solid #65716d;
  padding: 6px 0;
  display: inline-flex;
  align-items: center;
  gap: 22px;
  margin: 0;
}
.site-footer .footer-cta-link:hover {
  color: var(--gold);
  border-bottom-color: var(--gold);
}

.site-footer .footer-meta > .footer-bottom-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  gap: 18px;
  padding-top: 14px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  flex-wrap: wrap;
}
.site-footer .footer-policy-links {
  display: flex;
  align-items: center;
  gap: 18px;
  flex-wrap: wrap;
  font-size: 10.5px;
  color: #9cb2b0;
}
.site-footer .footer-policy-links a:hover {
  color: #ffffff;
}
.site-footer .footer-bottom-bar .copyright {
  margin: 0;
  font-size: 10px;
  color: #77918d;
  letter-spacing: 0.5px;
}

@media (max-width: 980px) {
  .site-footer .footer-meta > .footer-company-info {
    align-items: flex-start;
    gap: 20px;
  }
}
@media (max-width: 650px) {
  .footer-nav-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .site-footer .footer-meta > .footer-company-info {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }
  .site-footer .footer-meta > .footer-bottom-bar {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }
}

/* S6 Mobile Horizontal Overflow Prevention (360px / 390px / 768px / 1440px) */
html, body {
  overflow-x: hidden;
  max-width: 100%;
}
.table-responsive {
  overflow-x: auto;
  max-width: 100%;
  -webkit-overflow-scrolling: touch;
}
.service-subnav-bar, .service-subnav-inner {
  overflow-x: auto;
  max-width: 100%;
}
