@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Noto+Sans+KR:wght@400;500;600;700;800&display=swap');
:root{--navy:#0c182a;--navy2:#14273e;--blue:#3177ec;--cyan:#71c1ff;--ink:#152439;--muted:#647489;--line:#e4eaf1;--soft:#f5f8fc;--radius:12px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;font-family:Manrope,'Noto Sans KR','Malgun Gothic',sans-serif;color:var(--ink);word-break:keep-all;background:white;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}img{max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.065em}p{line-height:1.9}.container{width:min(1180px,calc(100% - 48px));margin:0 auto}.narrow{max-width:830px}.site-header{background:#101e31;color:#fff;position:relative;z-index:30;border-bottom:1px solid #ffffff19}.nav-inner{height:80px;display:flex;align-items:center;justify-content:space-between;gap:20px}.logo{font-size:29px;font-weight:800;letter-spacing:-2px;white-space:nowrap}.logo span{color:var(--cyan)}.logo small{color:#91a9c5;font-size:10px;font-weight:700;letter-spacing:1.5px;margin-left:8px}.nav-links{display:flex;gap:22px;align-items:center;color:#cad6e6;font-size:12px;font-weight:700}.nav-links>a:hover,.admin-header nav>a:hover{color:#fff}.nav-links .nav-quote{color:#fff;border:1px solid #6d829b75;border-radius:6px;padding:12px 17px}.nav-links .nav-quote:hover{background:#213c61}.hamburger{display:none;background:none;color:white;border:0;padding:8px}.hamburger span{display:block;width:23px;height:2px;background:white;margin:5px 0}.hero{background:radial-gradient(circle at 70% 40%,#21415c 0,transparent 37%),linear-gradient(110deg,#0b1729,#13253b);color:white;overflow:hidden;position:relative}.hero:before{content:"";position:absolute;inset:0;opacity:.19;background-image:linear-gradient(#ffffff0b 1px,transparent 1px),linear-gradient(90deg,#ffffff0b 1px,transparent 1px);background-size:62px 62px;pointer-events:none}.hero-grid{min-height:660px;display:grid;grid-template-columns:50% 50%;align-items:center;position:relative}.hero-copy{position:relative;z-index:2;padding:50px 0}.eyebrow{color:#80bcff;font-size:11px;letter-spacing:2.9px;font-weight:800;margin-bottom:22px}.hero h1{font-size:clamp(40px,4vw,59px);line-height:1.38;letter-spacing:-3.5px;margin:0 0 20px;font-weight:800}.hero h1 em{color:#84bdff;font-style:normal}.hero-copy>p{font-size:15px;line-height:2;color:#b9c9df;margin-bottom:28px}.buttons{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:51px;gap:9px;border-radius:7px;padding:14px 21px;font-size:13px;font-weight:800;border:1px solid transparent;text-align:center;transition:background .15s,transform .15s}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--blue);color:#fff}.btn-primary:hover{background:#205ed2}.btn-outline{background:#ffffff08;border-color:#8194aa70;color:white}.btn-outline:hover{background:#ffffff16}.btn-outline-dark{border-color:#cad7e5;background:white;color:#15263e}.btn-soft{background:#eaf2ff;color:#1e5dba}.hero-flags{display:flex;flex-wrap:wrap;gap:20px;color:#9facbe;font-size:12px;font-weight:600;margin-top:39px}.hero-flags span:first-letter{color:#81c7ff}.hero-image{position:relative;padding:30px 0}.hero-image img{width:105%;max-width:none;display:block;filter:drop-shadow(0 25px 25px #0003)}.float-label{position:absolute;z-index:3;background:#163049ea;border:1px solid #5e809f90;box-shadow:0 16px 32px #020b1944;backdrop-filter:blur(7px);padding:14px 17px;border-radius:9px}.float-label small{display:block;color:#8db8e7;font-size:9px;letter-spacing:1px;margin-bottom:6px}.float-label strong{font-size:13px;color:white}.float-1{top:18%;right:0}.float-2{bottom:21%;left:0}.quick-industries{border-bottom:1px solid var(--line);box-shadow:0 7px 20px #0d24340d}.industry-grid{display:grid;grid-template-columns:repeat(4,1fr)}.industry-grid a{padding:27px 14px;display:flex;gap:13px;align-items:center;transition:background .2s}.industry-grid a:hover{background:#f3f7ff}.industry-grid a:not(:last-child){border-right:1px solid var(--line)}.industry-icon{font-size:30px;color:#3979e7;line-height:1}.industry-grid strong{font-size:13px;display:block;margin-bottom:4px}.industry-grid small{font-size:11px;color:#8b97a8}.section{padding:100px 0}.soft{background:var(--soft)}.kicker{color:#3579e7;font-size:12px;letter-spacing:2.5px;font-weight:800}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:35px}.section-heading h2,.section h2{font-size:clamp(30px,3.1vw,43px);line-height:1.38;margin:12px 0 0}.section-heading p{font-size:14px;color:var(--muted);max-width:440px;margin-bottom:0}.solution-grid,.site-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{min-height:255px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:29px;display:flex;flex-direction:column;align-items:start;transition:box-shadow .2s,transform .2s}.service-card:hover,.site-card:hover,.list-card:hover{transform:translateY(-3px);box-shadow:0 12px 32px #17376115}.card-icon{display:grid;place-items:center;width:52px;height:52px;background:#eaf3ff;color:#2871e1;border-radius:11px;font-weight:800;font-size:18px}.service-card h3{font-size:20px;margin:19px 0 10px}.service-card p{font-size:13px;color:var(--muted);margin-bottom:18px}.card-link{margin-top:auto;color:#3375db;font-size:12px;font-weight:800}.text-links{display:flex;gap:22px;flex-wrap:wrap;margin-top:23px;font-size:13px;color:#356cb7;font-weight:700}.site-card,.project-card,.list-card{border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden;display:block;transition:box-shadow .2s,transform .2s}.site-photo{height:200px;display:flex;align-items:end;position:relative;padding:23px;overflow:hidden}.site-photo:before{content:"";position:absolute;width:220px;height:140px;border:2px solid #b0cfec70;border-radius:9px;right:18px;top:45px;transform:skew(-14deg) rotate(-8deg)}.site-photo:after{content:"";position:absolute;width:120px;height:6px;background:#ffffff89;right:47px;bottom:70px;transform:rotate(-28deg);box-shadow:0 40px #ffffff2a}.site-photo-1{background:linear-gradient(135deg,#17304b,#496985)}.site-photo-2{background:linear-gradient(135deg,#1e3a52,#7895a2)}.site-photo-3{background:linear-gradient(135deg,#1b314d,#506e82)}.site-photo span{color:#c9dff4;font-size:10px;letter-spacing:2px;font-weight:800;position:relative;z-index:1}.site-body{padding:25px}.site-body h3{font-size:20px;margin:0 0 8px}.site-body p{font-size:13px;color:var(--muted);min-height:49px}.site-body b{font-size:12px;color:#2e70d2}.project-card>img{width:100%;height:215px;object-fit:cover}.image-empty{height:215px;display:grid;place-items:center;background:#2c425a;color:#cad6e6;font-size:13px}.project-info{padding:23px}.project-info h3{font-size:19px}.project-info p{color:var(--muted);font-size:13px}.project-info small{color:#3873c8}.empty-record{background:#f7faff;border:1px dashed #b5c8e3;border-radius:13px;padding:30px 38px;display:flex;align-items:center;justify-content:space-between;gap:20px}.empty-record h3{font-size:21px;margin:0 0 6px}.empty-record p{font-size:13px;color:var(--muted);margin:0}.empty-symbol{color:#3b80ed;font-size:29px}.process-section{background:#f9fbfe}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:19px;margin-top:39px}.steps>div{border-top:2px solid #bfd6f9;padding-top:23px}.steps span{font-size:12px;color:#3979db;font-weight:800}.steps h3{margin:12px 0 10px;font-size:20px}.steps p{font-size:13px;color:var(--muted)}.guides-strip{background:#eaf2fc;padding:74px 0}.split-cta{display:flex;gap:40px;align-items:center;justify-content:space-between}.split-cta p{font-size:14px;color:#536d88}.callout{background:#101f33;color:white;padding:70px 0}.callout-inner{display:flex;align-items:center;gap:30px;justify-content:space-between}.callout h2{font-size:36px;line-height:1.4;margin:14px 0}.callout p{color:#afc1d7;font-size:14px}.footer{background:#081321;color:#9cadbe;padding:48px 0 52px}.footer-grid{display:flex;justify-content:space-between;align-items:start;gap:60px}.footer p{font-size:12px}.foot-links{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;font-weight:600}.foot-links a:hover{color:white}.company-details{text-align:right;font-size:11px;line-height:2}.company-details b{color:#d8e4ef;font-size:13px}.mobile-actions{display:none}.inner-hero{background:radial-gradient(circle at 80% 45%,#244664 0,transparent 33%),linear-gradient(110deg,#0d192c,#172d46);padding:95px 0;color:white}.inner-hero h1{font-size:clamp(35px,4.5vw,56px);line-height:1.32;max-width:780px;margin:0 0 22px}.inner-hero p{color:#b8c9dd;max-width:700px;font-size:15px}.inner-hero-grid{display:grid;grid-template-columns:60% 40%;align-items:center}.inner-art img{width:100%;filter:drop-shadow(0 10px 24px #020d2440)}.small-hero{padding:65px 0}.point-list{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-top:35px}.point-list>div{display:flex;gap:15px;padding:23px;border:1px solid var(--line);border-radius:10px}.point-list p{font-size:15px;line-height:1.7;margin:0}.point-check{font-size:20px;color:#3d80eb;font-weight:800}.advice{margin-top:36px;padding:27px;border-radius:11px;background:#eaf3ff}.advice h3{font-size:20px;margin-bottom:6px}.advice p{font-size:14px;color:#4f6581}.faq-item{border-bottom:1px solid var(--line);padding:20px 4px}.faq-item summary{list-style:none;position:relative;padding:4px 35px 4px 0;cursor:pointer;font-size:16px;font-weight:800}.faq-item summary:after{content:'+';position:absolute;right:4px;top:2px;font-size:24px;color:#3779db}.faq-item[open] summary:after{content:'−'}.faq-item p{color:var(--muted);font-size:14px;line-height:1.9;padding:7px 28px 0 0}.company-card{padding:25px 30px;border:1px solid var(--line);background:white;border-radius:12px;margin-top:25px}.company-card p{border-bottom:1px solid #edf0f4;margin:0;padding:12px 0}.company-card p:last-child{border:0}.company-card b{display:inline-block;min-width:110px}.muted{color:var(--muted);font-size:13px}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.list-photo{height:170px;display:grid;place-items:center;background:linear-gradient(135deg,#18334e,#7291a9);color:#d5e5f4;letter-spacing:2px;font-size:11px;font-weight:800}.list-photo img{width:100%;height:100%;object-fit:cover}.list-body{padding:23px}.list-body small{font-size:11px;color:#4780cf}.list-body h2{font-size:19px;line-height:1.5;margin:10px 0}.list-body p{font-size:13px;color:var(--muted)}.list-body b{font-size:12px;color:#2d70db}.article-hero{padding:85px 0 58px;background:#f2f6fb}.article-hero h1{font-size:clamp(30px,4vw,48px);line-height:1.42;margin:14px 0}.article-lead{font-size:16px;color:#4b627a}.article-meta{color:#8191a5;font-size:12px}.article-content{padding-top:65px}.article-content h2{margin-top:35px;font-size:27px}.article-content p{color:#52677e;font-size:15px}.article-content figure{margin:0 0 30px}.article-content figure img{width:100%;max-height:500px;object-fit:cover;border-radius:12px}.article-content figcaption{font-size:12px;color:#8797a9;margin-top:10px}.prewrap{white-space:pre-line}.article-facts{background:#f2f7fc;border-radius:12px;padding:16px 24px}.article-facts p{border-bottom:1px solid #dce7f1;padding:12px;margin:0}.article-facts p:last-child{border:0}.article-facts b{display:inline-block;min-width:110px}.article-tail{padding:28px;background:#10233b;color:white;border-radius:12px;margin-top:50px}.article-tail h3{font-size:23px}.article-tail p{color:#c9d9ea}.quote-layout{display:grid;grid-template-columns:39% 61%;gap:35px;align-items:start}.quote-side h2{margin:13px 0 18px}.quote-side>p{font-size:14px;color:var(--muted)}.quote-benefits{margin:30px 0}.quote-benefits>div{padding:13px 0;border-bottom:1px solid #dae4ef;font-size:14px;font-weight:700}.quote-benefits span{color:#377be8;font-size:12px;margin-right:15px}.notice-panel{background:#e7f0ff;border-radius:10px;padding:20px;margin:20px 0;color:#244568}.notice-panel p{font-size:12px;margin:6px 0 0}.quote-form,.admin-editor{background:white;border:1px solid var(--line);box-shadow:0 18px 55px #18375b0d;border-radius:13px;padding:33px}.form-title{margin-bottom:23px}.form-title h2{font-size:25px;margin:0 0 8px}.form-title p{color:var(--muted);font-size:12px;margin:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px}.form-grid>label,.admin-login-card label{font-size:12px;display:block;color:#2f425a;font-weight:800}.form-grid input,.form-grid select,.form-grid textarea,.admin-login-card input,.lead-update select,.lead-update input{display:block;width:100%;border:1px solid #d7e1ec;background:white;border-radius:7px;min-height:46px;color:var(--ink);padding:11px 12px;font-size:13px;margin-top:9px;outline:0}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.admin-login-card input:focus{border-color:#3279eb;box-shadow:0 0 0 3px #3379eb16}.form-grid textarea{resize:vertical;line-height:1.7}.form-grid .full,.admin-editor .full{grid-column:1/-1}.file-area small{display:block;font-weight:400;color:var(--muted);margin-top:8px}.consent{display:flex;align-items:start;gap:12px;margin:23px 0;font-size:12px;color:#5a6b7c;line-height:1.8}.consent input{margin-top:5px;accent-color:var(--blue)}.consent a{color:#2a65c8;text-decoration:underline}.submit-wide{width:100%;border:0}.fine-print{color:#7b8798;text-align:center;font-size:11px;margin-top:15px}.honeypot{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important}.error-message{background:#fff0f1;border:1px solid #f1c3c8;color:#a82d3d;padding:12px 15px;border-radius:7px;margin-bottom:18px;font-size:13px}.completion{text-align:center;padding:135px 0}.completion h1{font-size:35px}.completion p{color:var(--muted)}.completion .buttons{justify-content:center;margin-top:25px}.complete-icon{height:70px;width:70px;display:grid;place-items:center;margin:0 auto 25px;background:#e7f5ee;border-radius:100%;font-size:36px;color:#2b9d67}.legal-content h2{font-size:23px;margin:36px 0 12px}.legal-content p{color:#536477;font-size:14px}.legal-notice{background:#fff7e5;padding:18px;border-left:4px solid #e4ac32}.cookie-consent{position:fixed;z-index:90;bottom:17px;right:17px;max-width:480px;background:#101f33;color:#fff;border:1px solid #50698a;border-radius:10px;padding:17px;box-shadow:0 18px 35px #0b1f3660}.cookie-consent p{font-size:12px;margin:0 0 12px}.cookie-consent button{border:1px solid #6d88a7;border-radius:6px;background:#2e73df;color:white;padding:9px 17px;margin-right:7px}.cookie-consent button[data-consent=no]{background:transparent}
/* Admin */
.admin-body{background:#f3f6fa}.admin-header{background:#101e31;color:#ecf3ff}.admin-header nav{display:flex;gap:18px;align-items:center;flex-wrap:wrap;font-size:12px;font-weight:700;color:#bdd0e8}.admin-content{padding:48px 0 95px}.admin-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:27px}.admin-head h1{font-size:33px;margin:9px 0}.admin-head p{font-size:13px;color:var(--muted)}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:25px}.metric-card{border:1px solid var(--line);border-radius:11px;padding:25px;background:white}.metric-card small{display:block;color:#788ca4;font-weight:700}.metric-card b{display:block;font-size:30px;margin:10px 0}.metric-card span{font-size:11px;color:#8190a3}.admin-panel{padding:26px;border:1px solid var(--line);background:white;border-radius:12px;margin:23px 0}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.panel-heading h2{margin:0;font-size:20px}.panel-heading small{font-size:12px;color:#8191a0}.source-row{display:flex;gap:12px;flex-wrap:wrap}.source-row span{padding:10px 14px;background:#edf4fc;border-radius:7px;font-size:12px}.source-row b{color:#2c6ece}.table-scroll{overflow:auto}.admin-table{border-collapse:collapse;width:100%;min-width:870px;text-align:left;font-size:12px}.admin-table th{background:#f4f7fb;border-top:1px solid #e5ebf3;border-bottom:1px solid #e5ebf3;padding:12px}.admin-table td{border-bottom:1px solid #ecf0f5;padding:14px 11px;vertical-align:top;max-width:260px}.admin-table a{color:#286fd4;text-decoration:underline}.admin-table small{color:#76869b}.admin-table .nowrap{white-space:nowrap}.lead-message{font-size:12px;color:#607188;line-height:1.5;white-space:pre-wrap;max-height:120px;overflow:auto}.lead-update{display:flex;flex-direction:column;gap:7px;min-width:135px}.lead-update select,.lead-update input{margin:0;padding:8px 9px;min-height:36px;font-size:12px}.lead-update button{border:0;background:#2877db;color:white;border-radius:5px;padding:8px}.admin-editor{max-width:860px}.admin-editor textarea{line-height:1.7}.editor-actions{display:flex;gap:12px;margin-top:24px}.editor-image{display:block;max-width:300px;border-radius:10px}.admin-login{min-height:calc(100vh - 80px);display:grid;place-items:center;padding:35px 20px}.admin-login-card{max-width:445px;width:100%;padding:38px;background:white;border-radius:14px;box-shadow:0 16px 45px #142d4820}.admin-login-card h1{font-size:30px;margin:13px 0}.admin-login-card p{font-size:13px;color:#6e7d8d}.admin-login-card button{margin-top:20px}.admin-help{max-width:860px}.admin-help p{color:#617187;font-size:13px}
@media(max-width:1100px){.nav-links{gap:12px;font-size:11px}.hero-grid{grid-template-columns:52% 48%}.hero h1{font-size:46px}.float-1{right:-15px}.quote-layout{grid-template-columns:38% 62%;gap:16px}}
@media(max-width:850px){.nav-inner{height:70px}.hamburger{display:block}.nav-links{display:none;position:absolute;top:70px;left:0;right:0;background:#162942;border-top:1px solid #ffffff22;padding:15px 24px 28px;flex-direction:column;align-items:stretch;gap:0;font-size:14px}.nav-links.open{display:flex}.nav-links a{padding:13px 10px;border-bottom:1px solid #ffffff0d}.nav-links .nav-quote{margin-top:12px}.hero-grid{display:flex;flex-direction:column;align-items:stretch;padding-top:45px}.hero-copy{padding:35px 0 0}.hero-image{max-width:630px;margin:auto}.hero-image img{max-width:100%}.industry-grid{grid-template-columns:repeat(2,1fr)}.industry-grid a{padding:23px 13px}.industry-grid a:nth-child(2){border-right:none}.industry-grid a:nth-child(-n+2){border-bottom:1px solid var(--line)}.section-heading{display:block}.section-heading p{margin-top:15px}.site-grid,.solution-grid,.article-grid{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.quote-layout{grid-template-columns:1fr}.quote-side{max-width:660px}.inner-hero-grid{grid-template-columns:1fr}.inner-art{display:none}.admin-header .nav-inner{height:auto;min-height:70px;align-items:start;padding:20px 0;flex-direction:column}.admin-header nav{gap:13px}.metric-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.container{width:calc(100% - 36px)}.logo{font-size:25px}.hero h1{font-size:38px;letter-spacing:-2.5px}.hero-copy>p{font-size:13px}.hero-flags{font-size:10px;gap:10px;margin-top:27px}.hero-image{padding:0 0 14px;margin-top:25px}.float-label{padding:9px 10px}.float-label strong{font-size:10px}.float-label small{font-size:8px}.float-1{right:0;top:8%}.float-2{left:0;bottom:13%}.industry-grid strong{font-size:12px}.industry-grid small{font-size:10px}.industry-icon{font-size:22px}.section{padding:65px 0}.section-heading h2,.section h2{font-size:31px}.site-grid,.solution-grid,.article-grid{grid-template-columns:1fr}.service-card{min-height:220px}.site-photo{height:165px}.steps h3{font-size:17px}.steps p{font-size:12px}.empty-record{display:block;padding:23px}.empty-record .btn{margin-top:18px}.split-cta,.callout-inner,.footer-grid{display:block}.split-cta .btn,.callout .btn{margin-top:15px}.callout h2{font-size:30px}.footer-grid .company-details{text-align:left;margin-top:29px}.foot-links{gap:12px}.inner-hero{padding:69px 0}.inner-hero h1{font-size:36px}.small-hero{padding:55px 0}.point-list{grid-template-columns:1fr}.quote-form,.admin-editor{padding:22px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.mobile-actions{display:flex;position:fixed;z-index:35;bottom:0;left:0;right:0;background:#0b1d35;padding:10px;gap:9px;box-shadow:0 -5px 15px #0d1b2e35}.mobile-actions a{flex:1;text-align:center;background:#3478e5;border-radius:6px;color:white;font-size:12px;font-weight:800;padding:12px}.mobile-actions a+ a{background:#f0c84b;color:#1b2a3d}.footer{padding-bottom:85px}.metric-grid{gap:10px}.metric-card{padding:18px}.metric-card b{font-size:22px}.admin-head{align-items:start;flex-direction:column}.admin-panel{padding:15px}.panel-heading{align-items:start;flex-direction:column}.cookie-consent{left:12px;right:12px;bottom:64px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.export-link{font-size:12px;color:#286fd4;font-weight:800}.delete-form button{border:0;background:none;color:#a6525b;font-size:11px;text-decoration:underline;margin-top:9px;padding:0;cursor:pointer}

/* G-GATE v2: premium illustrated, switchable hero. 2026-10-22 */
.hero-v2 { min-height: 660px; background: radial-gradient(ellipse at 83% 48%,#11345b 0%,transparent 44%),linear-gradient(117deg,#071225 0%,#0c1c33 55%,#0b1a30 100%); isolation:isolate }
.hero-v2:before{opacity:.09;background-size:74px 74px}
.hero-halo{pointer-events:none;position:absolute;border-radius:50%;filter:blur(65px);opacity:.42}
.hero-halo--a{width:340px;height:340px;right:5%;top:9%;background:#2860b3}
.hero-halo--b{width:250px;height:250px;left:18%;bottom:-210px;background:#184e85}
.hero-v2 .hero-grid{min-height:615px;grid-template-columns:47% 53%;gap:10px;align-items:center}
.hero-copy-v2{padding:66px 0 80px;z-index:4}
.hero-copy-v2 .eyebrow{display:flex;align-items:center;gap:12px;font-size:10px;letter-spacing:2.5px;color:#a0cafc}
.eyebrow-line{width:24px;height:1px;background:#4cafff;display:inline-block}
.hero-copy-v2 h1{font-size:clamp(42px,4.2vw,64px);line-height:1.27;letter-spacing:-.085em;margin:0 0 25px;font-weight:800}
.headline-highlight{background:linear-gradient(95deg,#e9f6ff 5%,#76bbff 60%,#4795ff 100%);-webkit-background-clip:text;background-clip:text;color:transparent;white-space:nowrap}
.hero-copy-v2>p{font-size:14px;line-height:2.1;max-width:480px;color:#b9cde6;margin:0 0 32px}
.hero-v2 .btn-hero{min-height:55px;padding-inline:24px;box-shadow:0 8px 30px #145fd13d}
.hero-v2 .btn-hero-secondary{min-height:55px;padding-inline:22px;box-shadow:none}
.hero-v2 .hero-flags{margin-top:40px;gap:10px}
.hero-v2 .hero-flags span{border:1px solid #9cc9ff38;border-radius:28px;padding:8px 12px;background:#14457635;color:#c7d8ed;font-size:11px;white-space:nowrap}
.hero-v2 .hero-flags span:first-letter{color:inherit}
.hero-showcase{position:relative;z-index:2;min-width:0;align-self:center;padding:14px 0 5px 12px}
.hero-showcase:before{content:"";position:absolute;inset:40px -38px 43px 0;background:linear-gradient(140deg,#4b90ec1c,transparent 50%,#389fff0d);border:1px solid #76b3f31c;border-radius:22px;pointer-events:none;transform:skewY(-1deg)}
.hero-showcase-kicker{font-size:10px;letter-spacing:2px;font-weight:800;color:#a4c9ee;display:flex;align-items:center;gap:9px;position:relative;z-index:2;margin:0 0 12px 17px}
.hero-showcase-dot{height:7px;width:7px;display:inline-block;border-radius:50%;background:#50b7ff;box-shadow:0 0 12px #50b7ff}
.hero-showcase-index{margin-left:auto;color:#7690ae;letter-spacing:1.3px;font-size:11px}
.hero-showcase-index b{color:#ecf6ff}
.hero-art-stage{position:relative;aspect-ratio:823/408;width:114%;margin-left:-2%;overflow:hidden;border-radius:12px;box-shadow:0 23px 50px #0004;background:#09182c}
.hero-art-stage:before{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,#0b1931bd 0%,transparent 10%,transparent 90%,#10243a24 100%);pointer-events:none}
.hero-art{position:absolute;inset:0;opacity:0;visibility:hidden;transform:scale(1.045);transition:opacity .8s ease,transform 5.8s cubic-bezier(.25,.3,.2,1),visibility 0s .8s}
.hero-art--active{opacity:1;visibility:visible;transform:scale(1);transition:opacity .8s ease,transform 6.2s cubic-bezier(.25,.3,.2,1),visibility 0s}
.hero-art img{width:100%;height:100%;display:block;object-fit:cover;max-width:none}
.hero-showcase-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;position:relative;z-index:3;margin-top:20px;padding:0 1px 0 14px}
.hero-showcase-title{font-size:17px;font-weight:800;letter-spacing:-.045em;color:#f4faff;line-height:1.4}
.hero-showcase-info p{font-size:12px;color:#adc4de;margin:7px 0 0;line-height:1.6}
.hero-controls{display:flex;gap:7px;flex-shrink:0;align-items:center}
.hero-slide-btn,.hero-play-btn{height:33px;min-width:34px;background:transparent;color:#b1c6df;border:1px solid #7b9bb958;border-radius:6px;font-size:11px;font-weight:800;transition:background .2s,border .2s,color .2s}
.hero-slide-btn--active{background:#277ce5;border-color:#569dfa;color:#fff}
.hero-slide-btn:focus-visible,.hero-play-btn:focus-visible{outline:2px solid #fff;outline-offset:3px}
.hero-play-btn{font-size:12px}
.hero-progress{position:relative;height:2px;background:#abc8e02b;margin:18px 0 0 14px;border-radius:2px;overflow:hidden}
.hero-progress-fill{height:100%;background:#67afff;width:0%}
.hero-illustration-note{font-size:10px;letter-spacing:-.02em;color:#7892b2;text-align:right;margin:10px 0 0}
.hero-bottom-rail{border-top:1px solid #8cb4dd1b;position:relative;z-index:2}
.hero-bottom-rail .container{display:flex;align-items:center;gap:17px;min-height:43px;color:#6f98c4;font-size:9px;letter-spacing:1.5px;font-weight:800}
.hero-rail-line{height:1px;width:65px;background:#3a7bbc}
/* Subtle scroll reveal only with JS-enhancement; content remains visible if JS is off. */
.motion-ready .reveal-on-scroll{opacity:0;transform:translateY(22px);transition:opacity .68s ease, transform .68s ease}
.motion-ready .reveal-on-scroll.reveal-visible{opacity:1;transform:none}
@media (max-width:1150px){.hero-v2 .hero-grid{grid-template-columns:48% 52%}.hero-copy-v2 h1{font-size:clamp(39px,4.1vw,53px)}.hero-showcase-title{font-size:15px}}
@media (max-width:850px){.hero-v2 .hero-grid{display:flex;min-height:0;padding:28px 0 42px;flex-direction:column;align-items:stretch;gap:20px}.hero-copy-v2{padding:32px 0 0}.hero-showcase{max-width:760px;align-self:stretch;padding:10px 0 0}.hero-art-stage{width:100%;margin:0}.hero-v2 .hero-flags{margin-top:26px}.hero-copy-v2 h1{font-size:clamp(40px,7vw,56px)}.hero-showcase:before{inset:22px -10px 27px}}
@media (max-width:560px){.hero-v2 .hero-grid{padding:12px 0 28px;gap:22px}.hero-copy-v2{padding:30px 0 0}.hero-copy-v2 h1{font-size:clamp(32px,9vw,43px);letter-spacing:-.078em}.headline-highlight{white-space:normal}.hero-copy-v2>p{font-size:12px;line-height:1.95}.hero-v2 .hero-flags{gap:7px;margin-top:23px}.hero-v2 .hero-flags span{font-size:10px;padding:7px 9px}.hero-v2 .btn-hero,.hero-v2 .btn-hero-secondary{min-height:47px;padding:10px 13px;font-size:11px}.hero-showcase-kicker{margin-left:2px;font-size:9px;letter-spacing:1.2px}.hero-art-stage{border-radius:8px;aspect-ratio:823/408}.hero-showcase-bottom{padding:0;margin-top:16px;display:block}.hero-showcase-title{font-size:14px}.hero-showcase-info p{font-size:11px;margin-top:4px}.hero-controls{margin-top:13px}.hero-progress{margin-left:0;margin-top:13px}.hero-illustration-note{text-align:left;font-size:9px}.hero-showcase:before{inset:21px -7px 42px}.hero-bottom-rail .container{min-height:37px;font-size:8px}.hero-rail-line{width:26px}}
@media (prefers-reduced-motion:reduce){.hero-art,.hero-art--active,.motion-ready .reveal-on-scroll{transition:none!important;transform:none!important}.hero-progress{display:none}}


/* === Hero v3 typography and isometric illustration refinement === */
.hero-v3{background:
  radial-gradient(circle at 22% 16%, rgba(93,166,255,.14), transparent 20%),
  radial-gradient(circle at 82% 24%, rgba(96,198,255,.18), transparent 22%),
  linear-gradient(130deg,#081524 0%,#10243a 42%,#102740 100%)}
.hero-v3 .hero-grid{min-height:700px;grid-template-columns:48% 52%;gap:10px}
.hero-typo{position:absolute;z-index:0;font-size:clamp(88px,12vw,170px);font-weight:800;letter-spacing:-.08em;line-height:.9;color:rgba(255,255,255,.04);pointer-events:none;user-select:none}
.hero-typo--one{top:72px;left:calc(50% - 555px)}
.hero-typo--two{right:calc(50% - 580px);bottom:82px}
.eyebrow-v3{display:flex;align-items:center;gap:10px;color:#8dc6ff}
.hero-copy-v3{padding:68px 0 44px;position:relative;z-index:2}
.hero-copy-frame{position:relative;padding:10px 0 22px}
.hero-mini-caption{margin:0 0 18px;font-size:11px;letter-spacing:2.5px;font-weight:800;color:#7ca4ce}
.hero-copy-v3 h1{font-size:clamp(48px,5vw,74px);line-height:1.04;letter-spacing:-.08em;margin:0 0 18px}
.hero-accent{color:#fff}
.hero-outline{-webkit-text-stroke:1px rgba(128,190,255,.82);color:transparent;text-shadow:none}
.hero-lead{font-size:15px;line-height:1.9;color:#c8d7e7;max-width:560px;margin:0}
.hero-flags-v3{margin-top:28px}
.hero-flags-v3 span{background:rgba(255,255,255,.06);border:1px solid rgba(152,185,220,.16);backdrop-filter: blur(6px)}
.hero-caption-grid{margin-top:22px;display:flex;flex-wrap:wrap;gap:10px 16px;color:#6d88a7;font-size:10px;letter-spacing:1.55px;font-weight:700}
.hero-showcase-v3{align-self:center;max-width:620px;padding:38px 0 0;margin-left:auto;position:relative;z-index:2}
.hero-showcase-v3:before{content:"";position:absolute;inset:20px -8px 56px;border-radius:32px;background:linear-gradient(180deg,rgba(150,192,255,.11),rgba(255,255,255,.02));border:1px solid rgba(161,192,226,.14);box-shadow:0 22px 60px rgba(2,9,20,.26)}
.hero-art-stage-v3{width:100%;aspect-ratio:960/560;border-radius:28px;background:linear-gradient(180deg,#fbfdff,#eef5ff);border:1px solid rgba(187,211,241,.82);box-shadow:0 22px 45px rgba(5,24,46,.17);overflow:hidden}
.hero-art-stage-v3 img{width:100%;height:100%;object-fit:cover;display:block}
.hero-showcase-bottom-v3{padding:0 3px;margin-top:16px}
.hero-showcase-v3 .hero-showcase-title{font-size:17px;font-weight:800;letter-spacing:-.03em;color:#fff}
.hero-showcase-v3 .hero-showcase-info p{color:#9fb5cc}
.hero-showcase-v3 .hero-slide-btn{background:rgba(255,255,255,.05);border-color:rgba(137,176,217,.25);color:#ced9e7}
.hero-showcase-v3 .hero-slide-btn--active{background:#fff;border-color:#fff;color:#102743}
.hero-showcase-v3 .hero-play-btn{background:#132c46;border-color:#1b4065;color:#d9ebff}
.hero-showcase-v3 .hero-progress{margin-left:0;margin-top:15px;height:3px;background:rgba(255,255,255,.08)}
.hero-showcase-v3 .hero-progress-fill{height:100%;background:linear-gradient(90deg,#71c1ff,#2c77eb);border-radius:999px;width:0}
.hero-showcase-v3 .hero-illustration-note{margin-top:10px;font-size:10px;color:#7392b4}
@media (max-width:1150px){.hero-v3 .hero-grid{grid-template-columns:46% 54%}.hero-copy-v3 h1{font-size:clamp(44px,4.6vw,62px)}.hero-showcase-v3{max-width:580px}.hero-typo--two{right:calc(50% - 510px)}}
@media (max-width:850px){.hero-v3 .hero-grid{display:flex;flex-direction:column;min-height:0;padding:24px 0 40px;gap:18px}.hero-copy-v3{padding:34px 0 0}.hero-showcase-v3{max-width:760px;width:100%;padding-top:8px}.hero-copy-v3 h1{font-size:clamp(42px,8vw,58px)}.hero-typo{font-size:clamp(64px,18vw,118px)}.hero-typo--one{top:72px;left:22px}.hero-typo--two{right:22px;bottom:26px}}
@media (max-width:560px){.hero-copy-v3 h1{font-size:clamp(35px,11vw,46px)}.hero-mini-caption{font-size:10px;letter-spacing:2px}.hero-lead{font-size:12px;line-height:1.95}.hero-caption-grid{display:none}.hero-showcase-v3:before{inset:18px -4px 46px;border-radius:20px}.hero-art-stage-v3{border-radius:20px}.hero-showcase-v3 .hero-showcase-title{font-size:14px}.hero-showcase-v3 .hero-showcase-info p{font-size:11px}}

/* G-GATE v12 CRM and gallery refinement */
.admin-memo-label{display:block;color:#526c87;font-size:12px}.admin-memo-label textarea{display:block;width:100%;min-width:170px;margin:4px 0 8px;padding:8px;border:1px solid #dce6f3;border-radius:7px;font:inherit;resize:vertical;background:white}.call-lead{color:#0f6ddd;font-weight:700}.case-photo-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-top:20px}.case-photo-gallery figure{margin:0;border:1px solid #e3ebf5;border-radius:12px;overflow:hidden}.case-photo-gallery img{display:block;width:100%;height:180px;object-fit:cover}.case-photo-gallery figcaption{padding:8px;color:#60748b;font-size:12px}.public-gallery img{height:240px}.admin-editor input[type="file"]{width:100%;max-width:100%}
.gg-quote-section{padding-top:65px}.gg-wizard{min-height:500px}.gg-wizard-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.gg-wizard-top>span{font-size:12px;font-weight:800;color:#5079ad}.gg-step-markers{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:0 0 29px}.gg-step-markers span{border-top:3px solid #d5e3f4;padding:12px 0 0;color:#7b8ea7;font-size:11px;font-weight:800}.gg-step-markers span.is-current{color:#2278ee;border-color:#2278ee}.gg-quote-step{border:0;padding:0;margin:0;min-inline-size:0}.gg-quote-step[hidden]{display:none!important}.gg-quote-step legend{padding:0;margin:0 0 10px;font-size:24px;font-weight:800;letter-spacing:-1px}.gg-quote-step .step-desc{color:#65788d;font-size:13px;margin:0 0 24px}.gg-wizard-actions{display:flex;gap:9px;justify-content:space-between;margin-top:30px}.gg-wizard-actions button{flex:1}.gg-wizard .consent{margin-top:24px}


/* v13 - unified G-GATE navigation. No changes to approved hero/sections. */
.gg-site-menu{position:relative;display:inline-flex;align-items:center;white-space:nowrap;font:inherit;color:inherit}
.gg-site-menu>summary{font:inherit;color:inherit;font-weight:inherit;cursor:pointer;list-style:none;display:flex;align-items:center;gap:3px;user-select:none}
.gg-site-menu>summary::-webkit-details-marker{display:none}
.gg-site-menu>summary span{color:#4c82d4;font-size:13px}
.gg-site-menu[open]>summary{color:#176dec}
.gg-site-submenu{position:absolute;left:0;top:calc(100% + 14px);min-width:176px;display:flex;flex-direction:column;gap:1px;padding:8px;border:1px solid #dfebf9;border-radius:12px;background:#fff;box-shadow:0 15px 38px #11345724;z-index:1000;color:#213954;text-align:left}
.gg-site-submenu a{display:block!important;padding:11px 13px!important;color:#243954!important;font-size:12px!important;font-weight:700!important;border:0!important;border-radius:7px;line-height:1.2;white-space:nowrap}
.gg-site-submenu a:hover,.gg-site-submenu a:focus{background:#edf5ff!important;color:#1667d7!important}
.mainnav-links,.navlinks{gap:clamp(9px,1.6vw,21px)!important}
.mainnav-links>a,.navlinks>a{white-space:nowrap}
@container (max-width:780px){.navlinks .gg-site-menu{display:none!important}}
@media (max-width:780px){.navlinks .gg-site-menu{display:none!important}}
@media (max-width:850px){.mainnav-links.show .gg-site-menu{display:flex!important;min-height:35px;padding:9px 0}.mainnav-links.show .gg-site-submenu{position:static;box-shadow:none;margin-top:7px}}


/* Match the approved white header across company, projects, quote, and guide pages. */
.site-header{background:#fff;color:#183252;border-bottom:1px solid #e4eaf2}
.site-header .nav-links{color:#344b66;gap:clamp(9px,1.5vw,18px)}
.site-header .nav-links>a:hover{color:#0968e4}
.site-header .nav-links .nav-quote{background:#0d2543;color:#fff;border:0;padding:12px 15px}
.site-header .nav-links .nav-quote:hover{color:#fff;background:#1864c7}
.site-header .hamburger span{background:#173458}
.site-header .nav-links .gg-header-phone{color:#206ad7;font-weight:800}
@media(max-width:850px){.site-header .nav-links{background:#fff;border-top:1px solid #e7eef5;box-shadow:0 12px 30px #1a315025}.site-header .nav-links a{border-bottom:1px solid #edf2f8}.site-header .nav-links .gg-site-menu{display:flex;flex-direction:column;align-items:stretch;margin:7px 10px}.site-header .nav-links .gg-site-submenu{position:static;box-shadow:none;width:100%;margin-top:9px}}


/* G-GATE admin release badge — v1.2 */
.admin-header .nav-inner{position:relative;justify-content:space-between;gap:16px}
.admin-header .nav-inner>nav{margin-left:auto;gap:clamp(8px,1.25vw,18px)}
.admin-version{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-width:57px;padding:7px 12px;border:1px solid rgba(154,194,245,.40);border-radius:999px;background:rgba(42,109,211,.16);color:#c7e1ff;font-size:12px;font-weight:800;line-height:1;letter-spacing:.02em;white-space:nowrap;user-select:none}
@media(max-width:850px){
  .admin-header .nav-inner{position:relative;padding:20px 0 16px;gap:15px}
  .admin-header .nav-inner>nav{margin:0;gap:12px;padding-right:0}
  .admin-version{position:absolute;top:19px;right:0;min-width:55px}
}
