/* Shared Duran Tax visual language: navy, warm gold, coral risk accents, compact cards. */
:root {
    --duran-navy: #142b50;
    --duran-blue: #214b78;
    --duran-gold: #f3c866;
    --duran-coral: #ff7d75;
    --duran-ink: #26313d;
    --duran-muted: #68727d;
    --duran-line: #e8e5de;
    --duran-cream: #f7f4ed;
    --duran-paper: #fffdf9;
}

html { scroll-behavior: smooth; width: 100%; overflow-x: hidden; }
body { width: 100%; max-width: 100%; background: var(--duran-paper); color: var(--duran-ink); overflow-x: hidden; }
header { background: rgba(255,255,255,.97) !important; border-bottom: 1px solid var(--duran-line); box-shadow: 0 8px 28px rgba(20,43,80,.06) !important; }
.container { width: min(1120px, 90%); }
.logo { color: var(--duran-navy) !important; font-weight: 900 !important; letter-spacing: -.04em; }
.nav-menu a:hover, .nav-menu a.active { color: #b2862c !important; }
.mobile-nav { border-top: 1px solid var(--duran-line); }
.hero, .sub-hero, .calc-hero {
    background: radial-gradient(circle at 84% 18%, rgba(243,200,102,.18), transparent 25%), linear-gradient(135deg, #102448, #214b78) !important;
    color: #fff !important;
}
.hero h1, .sub-hero h1, .calc-hero h1 { color: #fff !important; letter-spacing: -.055em; }
.hero p, .sub-hero p, .calc-hero p { color: rgba(255,255,255,.8) !important; }
.section-title h2 { color: var(--duran-navy) !important; letter-spacing: -.045em; }
.section-title p { color: var(--duran-muted); }
.section, .seo-section { padding-top: 5.4rem !important; padding-bottom: 5.4rem !important; }
.bg-gray { background: var(--duran-cream) !important; }
.benefit-card, .service-card, .card, .app-card, .feature-card, .about-wrap, .success-story-wrap, .table-wrap, .story-box {
    border-color: var(--duran-line) !important;
    border-radius: 16px !important;
    box-shadow: 0 14px 36px rgba(20,43,80,.065) !important;
}
.benefit-card:hover, .service-card:hover, .card:hover, .app-card:hover { transform: translateY(-5px); box-shadow: 0 20px 44px rgba(20,43,80,.11) !important; }
.btn, .btn-gold, .btn-navy, .btn-calc, .btn-kakao { border-radius: 999px !important; }
.btn-gold { background: var(--duran-gold) !important; color: #173656 !important; }
.btn-navy { background: var(--duran-navy) !important; color: #fff !important; }
.duran-reference-strip { padding: 1.3rem 0; color: #fff; background: linear-gradient(110deg, #243e68, #163454); }
.duran-reference-strip__inner { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; }
.duran-reference-strip h2 { margin: 0; color: #fff; font-size: clamp(1.35rem, 2.7vw, 2rem); letter-spacing: -.045em; }
.duran-reference-strip h2 strong { color: var(--duran-coral); }
.duran-reference-strip p { margin: .2rem 0 0; color: rgba(255,255,255,.72); font-size: .87rem; }
.duran-reference-strip small { display: block; color: rgba(255,255,255,.55); }
.duran-price-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 1rem; }
.duran-price-card { display: flex; min-height: 190px; flex-direction: column; justify-content: space-between; padding: 1.45rem; border: 1px solid var(--duran-line); border-radius: 16px; background: #fff; box-shadow: 0 12px 30px rgba(20,43,80,.05); }
.duran-price-card .icon { color: #bd8e2b; font-size: 1.35rem; }
.duran-price-card h3 { margin: .7rem 0 .25rem; color: var(--duran-navy); font-size: 1.05rem; }
.duran-price-card p { margin: 0; color: var(--duran-muted); font-size: .84rem; }
.duran-price-card .price { margin-top: 1rem; color: var(--duran-navy); font-size: 1.08rem; font-weight: 900; }
.duran-price-card .price small { color: #8e7238; font-size: .72rem; font-weight: 700; }
.duran-price-card a { display: inline-flex; align-items: center; gap: .35rem; margin-top: .75rem; color: #a87921; font-size: .82rem; font-weight: 900; }
.duran-remote-offer { margin-top: 2rem; padding: 1.25rem 1.4rem; border: 1px solid #e7d9bb; border-radius: 16px; background: #fff9ed; }
.duran-remote-offer h3 { margin: 0 0 .25rem; color: var(--duran-navy); font-size: 1.1rem; }
.duran-remote-offer p { margin: 0; color: var(--duran-muted); font-size: .87rem; }
.duran-remote-offer strong { color: var(--duran-coral); }
.tax-flow { display: flex; align-items: stretch; gap: .65rem; }
.tax-flow > div:not(.tax-flow-connector) { flex: 1 1 0; min-width: 0; }
.tax-flow-connector { display: flex; flex: 0 0 1.35rem; align-items: center; justify-content: center; color: #bd8e2b; font-size: 1.15rem; }
.tax-flow-connector i { transition: transform .2s ease; }
@media (max-width: 900px) { .duran-price-grid { grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 900px) {
    .tax-flow { flex-direction: column; }
    .tax-flow-connector { flex-basis: 1.25rem; min-height: 1.25rem; }
    .tax-flow-connector i { transform: rotate(90deg); }
}
@media (max-width: 640px) {
    .hero, .sub-hero { width: 100%; max-width: 100%; overflow-x: hidden; }
    .hero > .container, .sub-hero > .container { box-sizing: border-box; width: 100% !important; max-width: 100% !important; min-width: 0; padding-right: 20px !important; padding-left: 20px !important; }
    .hero > .container > *, .sub-hero > .container > * { box-sizing: border-box; width: 100%; max-width: 100%; min-width: 0; white-space: normal; }
    .hero-content, .sub-hero-content { min-width: 0; max-width: 100%; }
    .hero h1, .hero p, .sub-hero h1, .sub-hero p { max-width: 100%; overflow-wrap: anywhere; word-break: break-word; }
    .hero .btn, .sub-hero .btn { max-width: 100%; }
    .duran-reference-strip__inner { align-items: flex-start; flex-direction: column; }
    .duran-reference-strip .btn { width: 100%; }
    .duran-price-grid { grid-template-columns: 1fr; }
    .calc-hero .container { min-width: 0; }
    .calc-hero { width: 100vw; max-width: 100vw; padding: 1.25rem !important; overflow: hidden; }
    .calc-hero > .container { box-sizing: border-box; width: 100% !important; max-width: 100% !important; padding: 0 !important; }
    .calc-hero > .container > * { box-sizing: border-box; min-width: 0; max-width: 100%; }
    .calc-hero .btn-group { display: grid !important; width: 100%; max-width: 100% !important; gap: .7rem; margin-bottom: 2rem !important; }
    .calc-hero .btn-group .btn { width: 100% !important; margin: 0 !important; }
    .calc-hero .container > div[style*="max-width"] { width: 100% !important; max-width: 100% !important; padding: 1.2rem !important; overflow-wrap: anywhere; word-break: break-word; }
    .calc-hero ul, .calc-hero li, .calc-hero strong { min-width: 0; overflow-wrap: anywhere; word-break: break-word; }
}
@media (max-width: 768px) {
    .hero > .container > *, .sub-hero > .container > *, .calc-hero > .container > * { overflow-wrap: anywhere !important; word-break: break-all !important; white-space: normal !important; }
    .hero h1, .sub-hero h1 { font-size: clamp(1.9rem, 8vw, 2.2rem) !important; line-height: 1.25 !important; }
    .hero p, .sub-hero p { font-size: 1rem !important; line-height: 1.75 !important; }
    .calc-hero .btn, .calc-hero [style*="text-align: left"] { overflow-wrap: anywhere !important; word-break: break-all !important; white-space: normal !important; }
}
