
    :root {
      color-scheme: light;
      --charcoal: #171d1b;
      --deep: #101613;
      --paper: #f4f2ec;
      --white: #fffefa;
      --ink: #202820;
      --muted: #666b62;
      --gold: #c9b185;
      --bronze: #806333;
      --line: #d6d8cd;
      --light-line: rgba(239,241,229,.2);
      --serif: Georgia, "Noto Serif KR", "Nanum Myeongjo", Batang, serif;
      --sans: Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", sans-serif;
    }
    *, *::before, *::after { box-sizing: border-box; }
    html { scroll-behavior: smooth; scroll-padding-top: 7rem; }
    body { margin: 0; font: 1rem/1.85 var(--sans); background: var(--paper); color: var(--ink); word-break: keep-all; overflow-wrap: break-word; }
    ::selection { background: var(--gold); color: var(--deep); }
    a { color: inherit; text-decoration: none; }
    button, input, select, textarea { font: inherit; }
    button, a, label { -webkit-tap-highlight-color: transparent; }
    button { cursor: pointer; }
    img { display: block; max-width: 100%; }
    h1, h2, h3, p, figure { margin: 0; }
    h1, h2, h3 { text-wrap: balance; }
    a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
      outline: 3px solid var(--bronze); outline-offset: 5px;
    }
    .dark a:focus-visible, .site-header a:focus-visible { outline-color: var(--gold); }
    .wrap { width: min(1240px, calc(100% - 96px)); margin-inline: auto; }
    .skip-link { position: fixed; z-index: 100; top: .7rem; left: 1rem; padding: .7rem 1rem; background: var(--white); color: var(--ink); transform: translateY(-180%); }
    .skip-link:focus { transform: translateY(0); }
    .dark { background: var(--charcoal); color: var(--paper); }
    .kicker { display: flex; gap: .85rem; align-items: center; color: var(--bronze); font-size: .75rem; font-weight: 600; letter-spacing: .18em; line-height: 1.6; }
    .kicker::before { content: ""; width: 28px; height: 1px; background: currentColor; flex: none; }
    .dark .kicker { color: var(--gold); }
    .arrow { width: 20px; height: 20px; flex: none; fill: none; stroke: currentColor; stroke-width: 1.5; }
    .button { display: inline-flex; justify-content: center; align-items: center; min-height: 54px; gap: 1.75rem; padding: .9rem 1.45rem; border: 1px solid var(--gold); border-radius: 2px; font-weight: 600; font-size: .9375rem; line-height: 1.5; transition: background .2s ease, color .2s ease; }
    .button-gold { background: var(--gold); color: var(--deep); }
    .button-gold:hover { background: #dbc7a5; border-color: #dbc7a5; }
    .button-line { border-color: var(--light-line); background: transparent; color: var(--paper); }
    .button-line:hover { border-color: var(--gold); color: var(--gold); }
    .text-link { display: inline-flex; align-items: center; gap: 1.4rem; min-height: 48px; border-bottom: 1px solid currentColor; padding-block: .55rem; font-size: .9375rem; line-height: 1.6; }
    .text-link:hover { color: var(--gold); }
    .site-header { position: sticky; z-index: 50; top: 0; background: rgba(23,29,27,.98); color: var(--paper); border-bottom: 1px solid var(--light-line); }
    .nav-shell { min-height: 92px; display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
    .brand { display: flex; align-items: center; gap: .9rem; flex: none; }
    .brand-seal { display: grid; place-items: center; width: 41px; height: 47px; border: 1px solid #9e8c6b; color: var(--gold); font: 1.9rem/1 var(--serif); }
    .wordmark { display: block; font: 1.3125rem/1.15 var(--serif); letter-spacing: .08em; }
    .brand-ko { display: block; margin-top: .35rem; font-size: .75rem; line-height: 1.4; letter-spacing: .16em; color: #c2c5bb; }
    .main-nav { display: flex; gap: 2rem; align-items: center; }
    .main-nav a { display: flex; align-items: center; min-height: 48px; color: #e2e3d9; font-size: .875rem; }
    .main-nav a:hover { color: var(--gold); }
    .nav-cta { padding: .7rem 1.3rem; min-height: 46px; font-size: .875rem; white-space: nowrap; }
    .hero { position: relative; padding: 78px 0 0; overflow: hidden; }
    .hero-layout { display: grid; grid-template-columns: 1.04fr 1fr; gap: 76px; align-items: center; padding-bottom: 74px; }
    .hero-copy { position: relative; z-index: 2; padding-block: 1.5rem; min-width: 0; }
    .hero-copy .kicker { margin-bottom: 2.5rem; }
    .hero-brand { font-size: clamp(3rem, 5.9vw, 5.4rem); letter-spacing: -.055em; font-weight: 650; line-height: 1.3; }
    .hero-line { margin-top: 1.5rem; color: #e6e5db; font-size: clamp(1.6rem, 2.45vw, 2.25rem); font-weight: 350; line-height: 1.65; letter-spacing: -.04em; }
    .hero-line em { color: var(--gold); font-style: normal; }
    .hero-description { margin-top: 1.65rem; color: #bfc4bb; max-width: 27rem; font-size: 1rem; line-height: 1.95; }
    .hero-actions { display: flex; gap: .75rem; flex-wrap: wrap; margin-top: 2.15rem; }
    .hero-photo { position: relative; min-width: 0; padding: 16px 0 0 16px; }
    .hero-photo::before { content: ""; position: absolute; z-index: 0; inset: 0 24px 30px 0; border: 1px solid #756b56; }
    .hero-photo img { position: relative; width: 100%; height: 590px; object-fit: cover; object-position: 61% center; }
    .hero-photo figcaption { display: flex; justify-content: space-between; gap: 1rem; position: relative; padding-top: 16px; font-size: .8125rem; color: #bfc4bb; }
    .photo-index { font-family: var(--serif); font-size: 1.1rem; color: var(--gold); }
    .hero-bottom { display: flex; justify-content: space-between; gap: 1.5rem; border-top: 1px solid var(--light-line); padding: 22px 0; color: #c5c9bf; font-size: .875rem; }
    .hero-bottom strong { color: var(--gold); font-weight: 500; letter-spacing: .05em; }
    .hero-bottom .english { font-size: .75rem; letter-spacing: .14em; }
    .section { padding-block: 112px; }
    .section-top { display: grid; grid-template-columns: 1.1fr .9fr; align-items: end; gap: 100px; margin-bottom: 54px; }
    .section-title { margin-top: 20px; font-size: clamp(2rem, 3.5vw, 3.1rem); font-weight: 500; line-height: 1.45; letter-spacing: -.045em; }
    .section-intro { max-width: 28rem; color: var(--muted); font-size: 1rem; line-height: 1.95; }
    .dark .section-intro { color: #bec4ba; }
    .services { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
    .service { padding: 38px 38px 40px; }
    .service:first-child { padding-left: 0; }
    .service:last-child { padding-right: 0; }
    .service + .service { border-left: 1px solid var(--line); }
    .service-top { display: flex; justify-content: space-between; gap: 1rem; align-items: center; margin-bottom: 44px; }
    .service-number { font: 2.8rem/1 var(--serif); color: var(--bronze); }
    .service-type { color: var(--muted); font-size: .75rem; letter-spacing: .14em; }
    .service h3 { font-size: 1.45rem; font-weight: 600; letter-spacing: -.04em; margin-bottom: 14px; }
    .service p { color: var(--muted); font-size: 1rem; }
    .works { background: var(--deep); }
    .project-meta { display: flex; justify-content: space-between; gap: 1rem; align-items: center; border-top: 1px solid var(--light-line); padding-top: 22px; margin-bottom: 22px; }
    .project-meta h3 { font-size: 1.375rem; font-weight: 500; letter-spacing: -.025em; }
    .project-meta span { color: var(--gold); font-size: .75rem; letter-spacing: .14em; }
    .project-grid { display: grid; grid-template-columns: 1fr 1fr 1.2fr; gap: 12px; }
    .photo-card { position: relative; overflow: hidden; background: #2c332e; }
    .photo-card img { width: 100%; height: 410px; object-fit: cover; transition: transform .55s ease; }
    .photo-card:hover img { transform: scale(1.025); }
    .photo-card figcaption { position: absolute; inset: auto 0 0; padding: 38px 20px 18px; background: linear-gradient(transparent,rgba(10,17,12,.86)); color: #fff; }
    .photo-card figcaption small { display: block; color: #e2d1b3; font-size: .75rem; letter-spacing: .15em; }
    .photo-card figcaption span { display: block; margin-top: 4px; font-size: .9375rem; }
    .project-footer { display: flex; justify-content: space-between; align-items: center; gap: 2rem; margin-top: 20px; }
    .project-footer p { font-size: .875rem; color: #bbc2b8; }
    .project-footer .text-link { flex: none; color: var(--gold); }
    .gallery { display: grid; grid-template-columns: 1.3fr 1fr 1fr; gap: 16px; margin-top: 64px; }
    .gallery a { display: block; position: relative; min-width: 0; overflow: hidden; background: #29302b; }
    .gallery a:first-child { grid-row: span 2; }
    .gallery img { width: 100%; height: 235px; object-fit: cover; transition: transform .55s ease; }
    .gallery a:first-child img { height: 100%; min-height: 486px; }
    .gallery a:hover img { transform: scale(1.035); }
    .gallery span { position: absolute; inset: auto 0 0; padding: 32px 18px 14px; color: #fff; font-size: .875rem; background: linear-gradient(transparent,rgba(10,17,12,.86)); }
    .work-note { margin-top: 22px; font-size: .8125rem; color: #b3bbb0; }
    .process { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 30px; }
    .step { border-top: 1px solid #afb6a9; padding-top: 28px; }
    .step-number { display: flex; flex-wrap: wrap; align-items: baseline; gap: .6rem; color: var(--bronze); }
    .step-number span { font: 2.5rem/1 var(--serif); }
    .step-number small { font-size: .75rem; letter-spacing: .1em; }
    .step h3 { margin: 24px 0 12px; font-size: 1.125rem; font-weight: 600; }
    .step p { color: var(--muted); font-size: 1rem; }
    .estimate { background: #e8e9e0; border-top: 1px solid var(--line); }
    .estimate-layout { display: grid; grid-template-columns: .78fr 1.35fr; gap: 82px; align-items: start; }
    .estimate-copy { padding-top: 15px; }
    .estimate-copy p { color: var(--muted); margin-top: 22px; }
    .estimate-copy .area-list { padding-top: 28px; margin-top: 30px; border-top: 1px solid #bec5b5; }
    .area-list span { display: block; font-size: .8125rem; color: var(--muted); margin-bottom: 8px; }
    .area-list strong { font-size: 1.0625rem; font-weight: 500; }
    .estimate-copy .form-explanation { font-size: .875rem; margin-top: 24px; }
    .estimate-form { background: var(--white); padding: 40px; border-top: 3px solid var(--bronze); box-shadow: 0 18px 60px rgba(29,40,24,.045); }
    .form-heading { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; padding-bottom: 24px; border-bottom: 1px solid var(--line); margin-bottom: 28px; }
    .form-heading h3 { font-size: 1.375rem; font-weight: 600; }
    .form-heading span { font-size: .8125rem; color: var(--muted); }
    .required-mark { color: #946426; font-weight: 700; }
    .form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px 18px; }
    .field { min-width: 0; display: flex; flex-direction: column; gap: 9px; }
    .full { grid-column: 1/-1; }
    .field > label, legend { font-size: .9375rem; font-weight: 600; line-height: 1.6; }
    .field input:not([type=checkbox]):not([type=radio]), .field textarea, .field select {
      display: block; width: 100%; max-width: 100%; min-height: 51px; padding: 12px 13px; border: 1px solid #bfc7b8; border-radius: 2px; color: var(--ink); background: var(--white); font-size: 1rem; line-height: 1.6; transition: border-color .2s ease;
    }
    .field input::placeholder, .field textarea::placeholder { color: #72776d; opacity: 1; }
    .field input:hover, .field select:hover, .field textarea:hover { border-color: var(--bronze); }
    .field textarea { min-height: 132px; resize: vertical; }
    fieldset.field { margin: 0; padding: 0; border: 0; display: block; }
    legend { padding: 0; margin-bottom: 10px; }
    legend small { font-size: .8125rem; color: var(--muted); font-weight: 400; }
    .choices { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
    .choice { display: flex; align-items: center; gap: 7px; min-height: 48px; border: 1px solid #ccd1c4; padding: 10px; font-size: .875rem; line-height: 1.6; border-radius: 2px; cursor: pointer; background: #f8f8f2; transition: border-color .2s ease,background .2s ease; }
    .choice input { width: 16px; height: 16px; margin: 0; accent-color: var(--bronze); flex: none; }
    .choice:has(input:checked) { background: #eee6d8; border-color: #957d53; color: #3a341e; }
    .choice:focus-within { outline: 2px solid var(--bronze); outline-offset: 2px; }
    .form-submit { width: 100%; border: 1px solid var(--charcoal); background: var(--charcoal); color: var(--paper); font-size: 1rem; }
    .form-submit:hover { background: #354135; }
    .form-note { margin-top: 12px; color: var(--muted); font-size: .8125rem; line-height: 1.8; }
    .status-message { color: var(--ink); background: #f1ecdf; padding: 14px; margin-top: 14px; border-left: 2px solid var(--bronze); font-size: .875rem; }
    [hidden] { display: none !important; }
    .closing { padding-block: 72px; background: #233028; color: var(--paper); }
    .closing-inner { display: flex; align-items: center; justify-content: space-between; gap: 3rem; }
    .closing h2 { font-size: clamp(1.8rem,3vw,2.65rem); line-height: 1.55; font-weight: 400; letter-spacing: -.04em; }
    .closing p { color: #c2cabd; margin-top: 12px; font-size: .9375rem; }
    .closing .text-link { color: var(--gold); flex: none; }
    .site-footer { background: var(--deep); color: #aeb8a9; padding: 56px 0 34px; }
    .footer-top { display: flex; justify-content: space-between; gap: 2rem; align-items: start; padding-bottom: 36px; }
    .footer-brand { color: var(--paper); font: 2.25rem/1.2 var(--serif); letter-spacing: .05em; }
    .footer-ko { color: #c4cbbb; margin-top: 14px; font-size: .875rem; }
    .footer-links { display: flex; gap: 2rem; font-size: .875rem; }
    .footer-links a { display: inline-flex; min-height: 44px; align-items: center; }
    .footer-links a:hover { color: var(--gold); }
    .footer-bottom { display: flex; justify-content: space-between; gap: 1.5rem; padding-top: 24px; border-top: 1px solid var(--light-line); font-size: .75rem; }
    .floating-estimate { position: fixed; z-index: 40; bottom: 22px; right: 22px; display: flex; align-items: center; gap: 14px; min-height: 52px; padding: 13px 20px; background: var(--gold); border: 1px solid #aa936a; color: var(--deep); box-shadow: 0 6px 24px rgba(0,0,0,.16); font-size: .9375rem; font-weight: 600; border-radius: 2px; }
    @media (min-width:1600px) { .hero-layout { gap: 100px; } }
    @media (max-width:1100px) {
      .wrap { width: calc(100% - 64px); }
      .main-nav { gap: 1.3rem; }
      .hero-layout { gap: 38px; }
      .hero-brand { font-size: clamp(3rem,5.65vw,4.5rem); }
      .hero-photo img { height: 535px; }
      .section-top { gap: 55px; }
      .estimate-layout { grid-template-columns: .75fr 1.3fr; gap: 36px; }
      .estimate-form { padding: 30px; }
      .choices { grid-template-columns: repeat(2,minmax(0,1fr)); }
      .service { padding-inline: 24px; }
      .photo-card img { height: 350px; }
    }
    @media (max-width:860px) {
      html { scroll-padding-top: 9rem; }
      .nav-shell { display: grid; grid-template-columns: 1fr auto; gap: 0 1rem; padding-top: 16px; }
      .main-nav { grid-column: 1/-1; grid-row: 2; gap: 0; justify-content: space-between; border-top: 1px solid var(--light-line); margin-top: 14px; }
      .main-nav a { min-height: 42px; font-size: .875rem; }
      .nav-cta { grid-column: 2; grid-row: 1; }
      .hero { padding-top: 50px; }
      .hero-layout { grid-template-columns: 1fr; gap: 40px; padding-bottom: 38px; }
      .hero-copy { padding-block: 0; }
      .hero-copy .kicker { margin-bottom: 22px; }
      .hero-brand { font-size: clamp(3rem,8.4vw,4.5rem); }
      .hero-line { font-size: 1.875rem; margin-top: 16px; }
      .hero-description { max-width: 35rem; }
      .hero-photo { width: 100%; padding: 12px 0 0 12px; }
      .hero-photo img { height: 430px; object-position: center 54%; }
      .hero-bottom { flex-wrap: wrap; gap: .5rem 1.5rem; }
      .section { padding-block: 80px; }
      .section-top { grid-template-columns: 1fr; gap: 24px; margin-bottom: 38px; }
      .section-intro { max-width: 38rem; }
      .services { grid-template-columns: 1fr; }
      .service, .service:first-child, .service:last-child { padding: 26px 0; }
      .service + .service { border-left: 0; border-top: 1px solid var(--line); }
      .service-top { margin-bottom: 20px; }
      .service h3 { margin-bottom: 10px; }
      .project-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
      .photo-card img { height: 295px; }
      .photo-card figcaption { padding-inline: 12px; }
      .photo-card figcaption small { font-size: .75rem; letter-spacing: .08em; }
      .project-footer { display: block; }
      .project-footer .text-link { margin-top: 14px; }
      .gallery { gap: 10px; grid-template-columns: 1fr 1fr; margin-top: 44px; }
      .gallery a:first-child { grid-column: 1/-1; grid-row: auto; }
      .gallery a:first-child img { height: 340px; min-height: 0; }
      .gallery img { height: 250px; }
      .process { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 36px 30px; }
      .estimate-layout { grid-template-columns: 1fr; gap: 35px; }
      .estimate-copy { padding-top: 0; }
      .estimate-copy .area-list { margin-top: 22px; padding-top: 22px; }
      .estimate-form { padding: 32px; }
      .choices { grid-template-columns: repeat(3,minmax(0,1fr)); }
      .closing-inner { display: block; }
      .closing .text-link { margin-top: 28px; }
      .floating-estimate { right: 16px; bottom: max(14px,env(safe-area-inset-bottom)); min-height: 48px; padding: 10px 16px; }
      .site-footer { padding-bottom: 92px; }
    }
    @media (max-width:540px) {
      .wrap { width: calc(100% - 40px); }
      .brand { gap: .6rem; }
      .brand-seal { width: 32px; height: 38px; font-size: 1.55rem; }
      .wordmark { font-size: 1.0625rem; }
      .brand-ko { font-size: .75rem; letter-spacing: .06em; }
      .nav-cta { min-height: 43px; padding: .6rem .8rem; font-size: .875rem; }
      .hero-layout { gap: 30px; }
      .hero-line { font-size: 1.55rem; }
      .hero-description { font-size: 1rem; margin-top: 18px; }
      .hero-actions { gap: 8px; margin-top: 26px; }
      .hero-actions .button { padding: .85rem 1rem; gap: .75rem; font-size: .875rem; }
      .hero-photo img { height: 330px; }
      .hero-photo figcaption { font-size: .75rem; padding-top: 12px; }
      .hero-bottom { flex-direction: column; padding-block: 18px; }
      .hero-bottom .english { font-size: .75rem; letter-spacing: .06em; }
      .section { padding-block: 64px; }
      .section-title { font-size: 2rem; line-height: 1.5; }
      .section-top { gap: 20px; margin-bottom: 30px; }
      .project-meta { display: block; }
      .project-meta span { display: block; margin-top: 8px; }
      .project-meta h3 { font-size: 1.2rem; }
      .project-grid { grid-template-columns: 1fr 1fr; gap: 10px; }
      .photo-card img { height: 250px; }
      .photo-card:last-child { grid-column: 1/-1; }
      .photo-card:last-child img { height: 340px; }
      .project-footer p { font-size: .875rem; }
      .photo-card figcaption span { font-size: .875rem; }
      .gallery img { height: 220px; }
      .gallery a:first-child img { height: 300px; }
      .gallery span { font-size: .8125rem; padding-inline: 12px; }
      .process { gap: 30px 22px; }
      .step h3 { margin-top: 20px; font-size: 1.0625rem; }
      .step p { font-size: 1rem; }
      .estimate-form { padding: 25px 18px; }
      .form-grid { grid-template-columns: 1fr; gap: 22px; }
      .choices { grid-template-columns: repeat(2,minmax(0,1fr)); }
      .form-heading { display: block; }
      .form-heading span { display: block; margin-top: 6px; }
      .form-submit { gap: 14px; padding-inline: 12px; font-size: .9375rem; }
      .closing { padding-block: 48px; }
      .closing h2 { font-size: 1.8rem; }
      .footer-top, .footer-bottom { display: block; }
      .footer-links { margin-top: 22px; }
      .footer-brand { font-size: 2rem; }
      .footer-bottom span { display: block; margin-bottom: 8px; }
    }
    @media (max-width:360px) {
      .wrap { width: calc(100% - 32px); }
      .hero-actions .button { width: 100%; justify-content: space-between; }
      .process { grid-template-columns: 1fr; }
      .project-grid { grid-template-columns: 1fr; }
      .photo-card:last-child { grid-column: auto; }
      .photo-card img { height: 300px; }
      .gallery { grid-template-columns: 1fr; }
      .gallery a:first-child { grid-column: auto; }
      .gallery img { height: 290px; }
      .choices { grid-template-columns: 1fr; }
    }
    @media (prefers-reduced-motion:reduce) {
      html { scroll-behavior: auto; }
      *, *::before, *::after { transition: none !important; animation: none !important; }
    }
    @media print {
      .site-header { position: static; }
      .floating-estimate, .hero-actions { display: none; }
      .section { padding-block: 30px; }
      .wrap { width: 100%; }
      .hero-photo img { height: 300px; }
      body { print-color-adjust: exact; -webkit-print-color-adjust: exact; }
    }
  
.region-hero{padding-block:70px}.region-hero h1{font-size:clamp(2.4rem,5vw,4.2rem);line-height:1.3;margin:20px 0}.region-hero .hero-layout{padding:0;gap:50px}.region-photo img{height:390px;width:100%;object-fit:cover}.region-photo figcaption{font-size:.8rem;color:#bfc4bb;margin-top:10px}.region-copy{font-size:1.08rem;color:#c5c9bf}.region-body{max-width:880px}.region-body h2{font-size:clamp(1.65rem,3vw,2.2rem);line-height:1.5;margin-bottom:20px}.region-body h3{font-size:1.15rem;margin:24px 0 10px}.region-body p{color:var(--muted);margin-bottom:20px}.region-panel{padding-block:42px;border-bottom:1px solid var(--line)}.region-links{display:flex;flex-wrap:wrap;gap:14px 28px}.region-links a{text-decoration:underline;text-underline-offset:5px}.regional-home{padding-block:60px;border-top:1px solid var(--line)}.regional-home h2{font-size:1.7rem;margin-bottom:18px}.regional-home p{color:var(--muted);margin-bottom:20px}@media(max-width:700px){.region-hero{padding-block:40px}.region-photo img{height:260px}.region-panel{padding-block:30px}.region-hero .hero-layout{gap:30px}}


.region-hero{padding:44px 0 38px}.region-hero .hero-layout{gap:44px;align-items:center}.region-hero h1{font-size:clamp(2.05rem,4vw,3.5rem);margin:14px 0 18px;line-height:1.25}.region-headline{font-size:clamp(1.2rem,2vw,1.7rem);font-weight:500;line-height:1.55;color:#e8e7de}.region-copy{font-size:1rem;line-height:1.8;max-width:32rem;margin-top:16px}.region-hero .hero-actions{margin-top:24px}.region-pills{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.region-pills span{font-size:.78rem;border:1px solid #586057;padding:5px 10px;border-radius:30px;color:#e8e7de}.hero-proof{display:grid;grid-template-columns:1fr 1fr;gap:10px}.proof-photo{margin:0;position:relative;overflow:hidden;background:#252e27;border-radius:5px}.proof-photo img{width:100%;height:330px;object-fit:contain;background:#252e27}.proof-photo figcaption{position:absolute;top:10px;left:10px;padding:5px 11px;background:#171d1be8;color:#fff;font-size:.8rem;line-height:1.5;border-radius:30px}.proof-photo.after figcaption{background:#c9b185;color:#101613}.proof-note{font-size:.8rem;color:#bfc4bb;margin-top:12px}.jumpbar{border-bottom:1px solid var(--line);background:#fffefa}.jumpbar .wrap{display:flex;gap:25px;padding-block:12px;flex-wrap:wrap}.jumpbar a{font-size:.88rem;font-weight:600;min-height:36px;display:flex;align-items:center}.region-body{max-width:1120px}.region-panel{padding-block:44px}.region-panel h2{font-size:clamp(1.45rem,2.5vw,2rem);line-height:1.45;margin:10px 0 14px}.region-panel p{font-size:.98rem;line-height:1.85;margin-bottom:16px}.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}.case-grid>div{min-width:0}.process-photo img{width:100%;height:250px;object-fit:contain;background:#e7e8df}.process-photo figcaption{padding-top:9px;font-size:.8rem;color:var(--muted)}.source-link{font-size:.87rem;text-decoration:underline;text-underline-offset:5px;display:inline-block;padding:8px 0;color:var(--bronze)}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:22px}.guide-card{padding:24px;background:#fffefa;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:5px}.guide-card .num{font-size:.76rem;color:var(--bronze);letter-spacing:.1em}.guide-card h3{margin:10px 0;font-size:1.08rem}.guide-card p{font-size:.9rem;margin:0}.faq-list{margin-top:20px}.faq-list details{border-top:1px solid var(--line);padding:0 2px}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;font-weight:600;font-size:.98rem;padding:19px 26px 19px 0;position:relative;list-style:none;line-height:1.6}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:3px;color:var(--bronze);font-size:1.3rem}.faq-list details[open] summary:after{content:'−'}.faq-list p{max-width:850px;padding-bottom:8px}.consult-panel{padding:28px 30px;background:var(--charcoal);color:var(--paper);border-radius:6px;margin-top:28px;display:flex;align-items:center;justify-content:space-between;gap:28px}.consult-panel h3{margin:0 0 8px;font-size:1.3rem}.consult-panel p{color:#c5c9bf;margin:0;font-size:.9rem}.consult-panel .button{flex:none}.region-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:24px}.region-card{display:block;overflow:hidden;border:1px solid var(--line);border-radius:5px;background:var(--white)}.region-card img{height:160px;width:100%;object-fit:cover}.region-card>div{padding:16px 18px}.region-card strong{display:block;font-size:1.08rem}.region-card span{display:block;margin-top:6px;font-size:.85rem;color:var(--muted)}.region-card:hover{border-color:var(--bronze)}.region-card[aria-current=page]{border-color:var(--bronze)}.home-region-quick{background:#e7e2d5;border-bottom:1px solid #d4ccba}.home-region-quick .wrap{display:flex;gap:14px;align-items:center;justify-content:center;flex-wrap:wrap;padding-block:10px}.home-region-quick strong{font-size:.82rem;color:#665338}.home-region-quick a{font-size:.87rem;font-weight:600;background:#fffefa;border:1px solid #cbc1ac;border-radius:30px;padding:5px 14px;min-height:36px}.regional-home{padding-block:55px}.region-sticky{position:fixed;bottom:20px;right:20px;z-index:40;box-shadow:0 4px 18px #0003}.regional-home p{margin:0}
@media(max-width:700px){.wrap{width:calc(100% - 36px)}.region-hero{padding:28px 0}.region-hero .hero-layout{grid-template-columns:1fr;gap:25px}.region-hero h1{font-size:2.05rem}.region-headline{font-size:1.18rem}.region-copy{font-size:.95rem}.region-hero .hero-actions{margin-top:20px}.hero-proof{gap:8px}.proof-photo img{height:240px}.case-grid{grid-template-columns:1fr;gap:20px}.process-photo img{height:210px}.region-panel{padding-block:32px}.guide-grid{grid-template-columns:1fr;gap:10px}.guide-card{padding:18px 20px}.guide-card h3{margin:6px 0}.consult-panel{display:block;padding:24px}.consult-panel .button{margin-top:18px;width:100%}.region-card-grid{gap:9px}.region-card img{height:110px}.region-card>div{padding:12px 10px}.region-card strong{font-size:.93rem}.region-card span{font-size:.76rem}.region-sticky{bottom:max(12px,env(safe-area-inset-bottom));right:12px;min-height:46px;padding:10px 18px}.region-panel:last-child{padding-bottom:80px}.home-region-quick .wrap{gap:7px;padding-block:9px}.home-region-quick strong{width:100%;text-align:center}.home-region-quick a{font-size:.8rem;padding:4px 12px}.jumpbar .wrap{gap:20px;padding-block:7px}.jumpbar a{font-size:.82rem}.region-hero .hero-actions .button{font-size:.84rem;padding:12px 15px;min-height:48px}.main-nav{gap:10px}.main-nav a{font-size:.8rem!important}.region-hero .kicker{font-size:.72rem}.region-card-grid .region-card{min-width:0}}


.guide-hero-photo img{width:100%;height:370px;object-fit:contain;background:#252e27}.guide-hero-photo figcaption{font-size:.8rem;color:#bfc4bb;margin-top:12px}.guide-hero-copy{margin-top:16px}.guide-breadcrumb{font-size:.8rem;color:var(--muted);padding:16px 0}.guide-breadcrumb a{text-decoration:underline;text-underline-offset:3px}.guide-nav{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.guide-nav a{border:1px solid var(--line);background:var(--white);padding:10px 16px;font-size:.9rem;border-radius:3px}.guide-nav a:hover,.guide-nav a[aria-current=page]{border-color:var(--bronze)}.guide-table{border-collapse:collapse;width:100%;background:var(--white);font-size:.92rem;margin-bottom:20px}.guide-table th,.guide-table td{padding:15px 18px;border:1px solid var(--line);text-align:left;vertical-align:top}.guide-table thead{background:#e7e2d5}.table-scroll{overflow-x:auto}.guide-card h3 a{display:inline-block;text-decoration:underline;text-underline-offset:4px}.service-footer{padding:28px 0}.service-footer a{text-decoration:underline;text-underline-offset:4px}.service-directory{padding-block:42px}.service-directory h2{font-size:clamp(1.45rem,2.5vw,2rem);margin-bottom:12px}.service-directory p{color:var(--muted)}
@media(max-width:700px){.guide-hero-photo img{height:260px}.guide-table th,.guide-table td{padding:12px 10px}.guide-nav a{font-size:.84rem;padding:8px 12px}.guide-hero-copy{font-size:.95rem}.service-directory{padding-block:32px}}
