/* CALEGAL V69: byte-for-byte concatenation of the original base styles in original cascade order. */

/* ===== style.css ===== */
/* CA LEGAL | foundation: original font, shared colors and elements | v2026.10.24.8 */
@font-face{font-family:YDIYMjO150;src:url('/fonts/YDIYMjO150.woff2') format('woff2'),url('/fonts/YDIYMjO150.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}
:root{--ca-navy:#091c2d;--ca-deep:#102b40;--ca-ink:#152b3c;--ca-bronze:#b99b6a;--ca-paper:#f5f3ed;--ca-cream:#faf9f6;--ca-line:#dce2e4;--ca-muted:#526575;--ca-radius:4px;--ca-shadow:0 24px 55px rgba(8,31,49,.10);--site-blue:#1e4e73;--site-blue-dark:#183b58;--site-blue-soft:#eaf0f2;--site-border:#dce5ee;--site-radius:8px;--editor-gold:#b99b6a;--editor-dark:#091c2d;--editor-paper:#f5f3ed}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{font-family:YDIYMjO150,Arial,sans-serif!important;font-size:18px!important;font-weight:400;line-height:1.76;color:var(--ca-ink);background:var(--ca-cream);overflow-wrap:break-word;min-width:0}
img,svg,video,iframe,embed,object{max-width:100%}img{height:auto}iframe{border:0}
a{color:#174665;text-decoration:none;transition:color .18s ease}a:hover{color:#a17a47}
:where(a,button,input,select,textarea):focus-visible{outline:2px solid #b08c50;outline-offset:3px}
.skip-to-content{position:absolute;top:-100px;left:12px;z-index:9999;padding:12px 16px;background:#fff;color:#08223a}.skip-to-content:focus{top:10px}
.container-xl{max-width:1360px}
:where(h1,h2,h3,h4,h5){font-family:inherit;color:var(--ca-ink);line-height:1.33}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}


/* ===== nav.css ===== */
/* CA LEGAL | header, desktop navigation and submenus | v2026.10.24.10 */
/* Contact strip: phone on the left, original street address on the right. */
.site-topbar{position:relative;background:#0b2639;color:#e9eff2;border-bottom:0}
.site-topbar-inner{min-height:39px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.site-topbar-actions{flex:0 0 auto;display:flex;align-items:center}
.site-topbar-actions a{display:inline-flex;align-items:center;gap:8px;min-height:0;padding:0;border:0;border-radius:0;background:transparent;color:#fff;font-size:15px;font-weight:600;letter-spacing:.005em;line-height:1.4;white-space:nowrap;text-decoration:none;transition:color .18s ease}
.site-topbar-actions a:hover,.site-topbar-actions a:focus-visible{color:#e4c693;background:transparent;border:0}
.site-topbar-intro{display:inline-flex;align-items:center;justify-content:flex-end;gap:7px;min-width:0;font-size:13px;font-weight:400;letter-spacing:.005em;line-height:1.4;text-align:right;color:#e2e8eb}
.site-topbar-icon{width:15px;height:15px;flex:0 0 15px;color:#d6b681}
.site-topbar-intro .site-topbar-icon{color:#c6a36a}
.site-header{position:relative;z-index:1100;background:#fff;box-shadow:0 14px 36px rgba(10,31,48,.055);border-bottom:1px solid #ebeeef}
.site-header .site-navbar{display:flex;align-items:center;gap:12px;min-height:99px;padding-block:15px;flex-wrap:nowrap}
.site-brand{display:inline-flex;align-items:center;flex:0 0 auto;max-width:255px;padding:0;margin-right:auto}
.site-brand #logo{display:block;width:min(100%,255px);max-width:100%;height:auto}
.site-nav-collapse{flex-grow:0;min-width:0}
.site-header .site-nav-list{display:flex;align-items:center;flex-direction:row;flex-wrap:nowrap;gap:3px;margin:0;padding:0;list-style:none}
.site-header .site-nav-list>.nav-item{position:relative;flex:0 0 auto;margin:0;list-style:none}
.site-nav-pair{display:flex;align-items:center;white-space:nowrap}
.site-header .site-nav-list .nav-link,.site-header .site-nav-list .site-nav-label{font-family:inherit;display:inline-flex;align-items:center;background:transparent;border:0;border-radius:3px;padding:12px 8px!important;margin:0;line-height:1.35;color:#142f44!important;white-space:nowrap;font-size:16px!important;font-weight:500;letter-spacing:-.015em;cursor:pointer;text-decoration:none}
.site-header .site-nav-list .nav-link:hover,.site-header .site-nav-list .nav-link:focus-visible,.site-header .site-dropdown.is-open>.site-nav-pair>.nav-link{background:#f4f2ed!important;color:#154566!important}
.site-header .site-submenu-toggle{display:grid;place-items:center;flex:0 0 20px;width:20px;height:40px;padding:0;margin-left:-3px;background:transparent;border:0;color:#677786;cursor:pointer}
.site-header .site-submenu-toggle span{display:block;width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .15s ease}
.site-header .site-dropdown.is-open .site-submenu-toggle span{transform:rotate(225deg) translate(-1px,-2px)}
.site-header .site-dropdown-menu{display:block!important;visibility:hidden;opacity:0;position:absolute!important;top:100%;left:0;width:max-content;min-width:240px;max-width:min(340px,92vw);padding:10px 8px;margin:0;border:1px solid #e3e4e2;border-top:3px solid var(--ca-bronze);border-radius:0 0 5px 5px;background:#fff;list-style:none;box-shadow:0 24px 55px rgba(9,26,42,.17);pointer-events:none;transition:opacity .13s ease,visibility .13s ease;z-index:1200}
.site-header .site-dropdown.is-open>.site-dropdown-menu{visibility:visible;opacity:1;pointer-events:auto}
.site-header .site-dropdown.is-dismissed>.site-dropdown-menu{visibility:hidden!important;opacity:0!important;pointer-events:none!important}
.site-header .site-dropdown-menu .dropdown-item{display:block;white-space:normal;padding:11px 15px;font-size:15px;line-height:1.45;color:#203c51;border-radius:2px}
.site-header .site-dropdown-menu .dropdown-item:hover,.site-header .site-dropdown-menu .dropdown-item:focus{color:#102b40;background:#f5f2eb}
.site-nav-toggle{display:none;align-items:center;gap:10px;padding:10px 12px;border:1px solid #d6dce1;border-radius:4px;background:#fff;color:#102f49;font-family:inherit;font-size:15px}
.site-hamburger{display:flex;flex-direction:column;gap:4px}.site-hamburger span{display:block;width:20px;height:2px;background:currentColor}
.site-nav-toggle:focus{box-shadow:none}
@media(min-width:992px){.site-header .site-nav-collapse{display:flex!important;width:auto;max-height:none;overflow:visible;padding:0;margin:0;border:0}.site-header .site-nav-list>.site-dropdown:nth-child(n+4)>.site-dropdown-menu{left:auto;right:0}}
@media(min-width:992px) and (max-width:1199.98px){.site-brand{max-width:190px}.site-brand #logo{width:190px}.site-header .site-nav-list .nav-link,.site-header .site-nav-list .site-nav-label{font-size:14px!important;padding:11px 4px!important}.site-header .site-submenu-toggle{width:17px;flex-basis:17px}}
@media(min-width:1200px) and (max-width:1399.98px){.site-brand{max-width:230px}.site-brand #logo{width:225px}.site-header .site-nav-list .nav-link,.site-header .site-nav-list .site-nav-label{font-size:15px!important;padding:12px 6px!important}}


/* ===== main.css ===== */
/* CA LEGAL | approved light premium homepage design | v2026.10.24.16 */
.site-main:has(.ca-hero){padding:0!important;max-width:none!important;background:#fff}
.ca-hero{position:relative;isolation:isolate;overflow:hidden;color:#0e2b43;background:#f7f5ef;border-bottom:1px solid #e8dfcf}
.ca-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(249,248,244,.97) 0%,rgba(249,248,244,.92) 26%,rgba(247,247,244,.71) 45%,rgba(249,249,246,.14) 75%,transparent 100%),url('/images/calegal-hero-premium-restored-20261024.jpg') center 53%/cover no-repeat;z-index:-1}
.ca-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:linear-gradient(90deg,#b99b64,rgba(185,155,100,.18))}
.ca-hero-shell{width:min(100%,1460px);min-height:470px;margin:auto;display:flex;align-items:center;justify-content:flex-start;padding:44px clamp(22px,6vw,105px) 54px}
.ca-hero-content{position:relative;width:min(100%,820px);display:flex;flex-direction:column;align-items:center;text-align:center;gap:26px}
.ca-hero-heading{display:flex;flex-direction:column;align-items:center;gap:10px;width:100%}
.ca-hero-brand{display:flex;align-items:baseline;justify-content:center;gap:18px;flex-wrap:nowrap;margin:0!important;font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(60px,7.2vw,111px)!important;font-weight:400!important;line-height:.98!important;letter-spacing:-.058em;white-space:nowrap}
/* Matching font-size, font-weight, line-height and baseline for EVERY letter in CA LEGAL. */
.ca-hero-brand span{font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(60px,7.2vw,111px)!important;font-weight:400!important;letter-spacing:-.058em!important;line-height:.98!important}
.ca-hero-brand span:first-child{color:#b4945c}.ca-hero-brand span:last-child{color:#102943}
.ca-hero-subtitle{color:#263a4a;font-family:Georgia,'Times New Roman',serif;font-size:clamp(16px,1.7vw,22px);letter-spacing:.05em;line-height:1.35}
.ca-hero-korean{font-size:clamp(27px,3vw,39px);line-height:1.2;font-weight:400;letter-spacing:.075em}
.ca-copy-carousel{width:100%;min-height:160px}
.ca-copy-carousel .carousel-inner{min-height:140px}
.ca-hero-services{width:100%;padding:25px 0 0;border-top:1px solid rgba(179,149,94,.65);font-size:clamp(18px,1.7vw,23px);font-weight:500;line-height:1.9;letter-spacing:-.015em;color:#132d43;text-wrap:balance}
.ca-hero-services>div{white-space:normal}
.ca-hero-dots{position:static!important;display:flex;justify-content:center;gap:12px;padding:0;margin:13px 0 0!important}
.ca-hero-dots [data-bs-target]{box-sizing:border-box;width:27px!important;height:3px!important;min-height:3px!important;margin:0!important;padding:0!important;border:0!important;background:#a8b1b5!important;opacity:.55}
.ca-hero-dots [data-bs-target].active{background:#ad8750!important;opacity:1}
.ca-hero-services:not(.active):not(.carousel-item-next):not(.carousel-item-prev){display:none}
.ca-copy-carousel .carousel-item:is(.active,.carousel-item-next,.carousel-item-prev){display:flex;flex-direction:column;justify-content:center}
.ca-hero-mobile-image{display:none}
/* Services: intentional large-format two-column composition; original titles/descriptions unchanged. */
.ca-home-services{position:relative;background:#f7f8f8;padding:58px 0 78px}
.ca-home-services::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:#e1dfd7}
.ca-section-heading{display:flex;align-items:center;gap:34px;margin:0 0 36px;padding-bottom:21px;border-bottom:1px solid #cfd3d4}
.ca-section-heading h2,.ca-section-heading h2 a{color:#102b40!important;font-family:inherit!important;font-size:clamp(39px,4.7vw,67px)!important;font-weight:400!important;line-height:1.14!important;letter-spacing:-.055em!important;margin:0!important;text-decoration:none}
.ca-heading-rule{height:2px;flex:1;background:linear-gradient(90deg,#bb9a66 0,rgba(187,154,102,.23) 32%,transparent 100%)}
.ca-services-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.ca-service{position:relative;min-width:0;background:#fff;border:1px solid #dfe7ec;border-top:4px solid #c8a46c;border-radius:10px;box-shadow:0 18px 34px rgba(13,37,53,.055);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}
.ca-service:nth-child(2),.ca-service:nth-child(3){border-top-color:#233e54}
.ca-service:hover{transform:translateY(-4px);box-shadow:0 24px 50px rgba(16,43,64,.11)}
.ca-service-inner{padding:25px clamp(19px,2vw,30px) 25px;min-height:285px;display:flex;flex-direction:column}
.ca-service-number{width:64px;height:2px;background:#bfa477;margin:0 0 23px}
.ca-service-title{border:0!important;background:transparent!important;color:#102e45!important;font-family:inherit!important;font-weight:400!important;font-size:clamp(26px,2.3vw,35px)!important;letter-spacing:-.045em!important;line-height:1.3!important;text-align:left!important;padding:0!important;margin:0 0 17px!important}
.ca-service-title a,.ca-service-title a.text-white{color:#102e45!important}
.ca-service-body{font-size:17px;line-height:1.82;color:#475a67}
.ca-service-body a{color:#244f6c;text-decoration:none;border-bottom:1px solid #b8c5cd}.ca-service-body a:hover{color:#896237;border-color:#896237}
/* About: oversized editorial text and original branded emblem. */
.ca-home-about{background:#fff;padding:clamp(77px,9vw,132px) 0}
.ca-about-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(250px,.68fr);gap:clamp(36px,7vw,105px);align-items:center}
.ca-about-copy{position:relative;padding:32px 0 32px clamp(25px,4vw,65px);border-left:4px solid #c6a673;color:#1b3446;font-size:clamp(19px,1.9vw,24px);line-height:1.96;letter-spacing:-.015em}
.ca-about-emblem{position:relative;min-height:345px;display:grid;place-items:center;margin:0;padding:35px;border:1px solid #e3e5e2;background:linear-gradient(145deg,#f8f8f5,#efeee8)}
.ca-about-emblem::before{content:"";position:absolute;inset:14px;border:1px solid #d2d7d5;pointer-events:none}
.ca-about-emblem img{width:min(235px,78%);height:auto;object-fit:contain}
/* Questions: full-width light reading panel with strong hierarchy, no invented copy. */
.ca-home-qa{background:#112e43;padding:clamp(78px,8vw,116px) 0;color:#f4f5f3}
.ca-home-qa .ca-section-heading{border-color:#456072}.ca-home-qa .ca-section-heading h2{color:#fff!important}
.ca-home-qa .ca-heading-rule{background:linear-gradient(90deg,#bfa477,transparent)}
.ca-qa-list ol{padding:0;margin:0;list-style:none;counter-reset:qa;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(35px,5vw,80px)}
.ca-qa-list li{counter-increment:qa;position:relative;padding:27px 6px 30px 64px;margin:0;border-top:1px solid rgba(235,240,240,.23);font-size:17px;line-height:1.91;color:#dce5e8;overflow-wrap:anywhere}
.ca-qa-list li::before{content:counter(qa,decimal-leading-zero);position:absolute;top:29px;left:0;font-family:Arial,sans-serif;font-size:20px;font-weight:400;letter-spacing:.04em;color:#d9b47e}
/* Visit: airy two-media grid and address/parking, fully original content. */
.ca-home-contact{padding:clamp(68px,8vw,106px) 0;background:#f8f7f3}
.ca-embed-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.ca-embed-panel{min-width:0;background:#fff;border:1px solid #e1e3e1;padding:12px;box-shadow:0 16px 35px rgba(11,33,48,.055)}
.ca-embed-panel .ratio{width:100%;border-radius:0;overflow:hidden}.ca-embed-panel iframe{width:100%;height:100%;display:block}
.ca-location-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:30px;margin-top:27px;padding:39px 43px;background:#fff;border:1px solid #e1e3e1;border-left:5px solid #bfa477}
.ca-parking img{display:block;width:154px;height:auto}
.ca-foot-links{margin-top:30px;padding:25px 0 0;border-top:1px solid #d4d9d8}
.ca-home-contact :is(a,button){overflow-wrap:break-word}

/* Retain approved normal-weight footer and service links. */
.ca-foot-links a,.ca-foot-links .btn,.ca-service-body a{font-weight:400!important}


/* ===== pages.css ===== */
/* CA Legal 2026.10.24.5 | Inner content / articles / tables / breadcrumbs */

.ratio {
  border-radius: 8px;
  overflow: hidden;
}

.foot-menu {
  font-size: 18px;
  margin-right: 5px;
  background-color: #f7f7f7;
  border: 1px solid #ffffff;
  height: 30px;
  padding: 4px 8px;
  margin-bottom: 2px;
}

.site-main {
  padding-block: clamp(20px, 3vw, 34px) 8px;
  min-width: 0;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.site-main > .container, .site-main > .container-fluid {
  max-width: 1180px;
}

.site-main .row > [class*="col-"] {
  min-width: 0;
}

.site-main :is(p, li, td) {
  overflow-wrap: break-word;
}

.site-main :is(h1, h2, h3, h4, h5) {
  color: #244a73;
  line-height: 1.38;
}

.site-main h1 {
  font-size: clamp(1.6rem, 1.3rem + 1vw, 2.05rem);
}

.site-main h2 {
  font-size: clamp(1.35rem, 1.2rem + .6vw, 1.75rem);
}

.site-main h3 {
  font-size: clamp(1.16rem, 1.05rem + .45vw, 1.44rem);
}

.site-main .ratio {
  border-radius: var(--site-radius);
}

.site-main .table-responsive, .site-main .site-table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.site-main .site-table-scroll {
  width: 100%;
  max-width: 100%;
}

.site-main .site-table-scroll > table {
  margin-bottom: 0;
}

.site-main iframe:not(.ratio iframe) {
  max-width: 100%;
}

.site-main .foot-menu {
  height: auto !important;
  min-height: 34px;
  margin: 3px;
  padding: 9px 13px;
  border: 1px solid #e1e6e9;
  border-radius: 2px;
  color: #516779;
  background: #fff;
  line-height: 1.3;
  display: inline-flex;
  align-items: center;
  font-size: 15px;
  font-weight: 650;
}

.site-main .foot-menu:hover {
  color: var(--ca-navy);
  background: #e9efef;
}

.site-main > .container {
  padding-top: clamp(26px, 3vw, 40px);
  padding-bottom: clamp(38px, 4.5vw, 61px);
}

.site-main .container > .breadcrumb:first-child, .site-main .container > .row:first-child .breadcrumb {
  margin-bottom: 24px;
}

.site-main .breadcrumb {
  display: flex;
  flex-wrap: wrap;
  background: none;
  padding: 0 0 19px;
  border: 0;
  border-radius: 0;
  color: #788896;
  font-size: 15px;
  border-bottom: 1px solid #d8e2e6;
  margin-bottom: 31px;
}

.site-main .breadcrumb-item + .breadcrumb-item::before {
  color: #aab4bd;
}

.site-main :is(h1,h2,h3,h4,h5) {
  font-family: inherit;
  font-weight: 740;
  letter-spacing: -.045em;
  color: var(--ca-navy) !important;
  line-height: 1.42;
}

.site-main :is(h1) {
  font-size: clamp(33px,3.2vw,48px) !important;
  margin-bottom: 19px;
  font-weight: 400;
  margin: 5px 0 26px;
  letter-spacing: -.025em;
}

.site-main :is(h2) {
  font-size: clamp(25px,2.3vw,32px) !important;
  margin-top: 36px;
  margin-bottom: 20px;
  font-weight: 400;
}

.site-main :is(h3) {
  font-size: clamp(21px,1.9vw,27px) !important;
  margin-top: 24px;
  margin-bottom: 13px;
  font-weight: 400;
}

.site-main p, .site-main li {
  line-height: 1.83;
}

.site-main :is(ul,ol) {
  padding-left: 1.55rem;
}

.site-main .text-justify {
  text-align: left !important;
}

.site-main .table {
  font-size: 14px;
  border-color: #e7ecee;
}

.site-main .table > :not(caption) > * > * {
  padding: 14px 16px;
}

.site-main .table-dark, .site-main .table thead.table-dark {
  --bs-table-bg: #203c56;
  --bs-table-border-color: #3b5267;
}

.site-main .table a {
  font-weight: 650;
}

.site-main .table-striped > tbody > tr:nth-of-type(odd) > * {
  --bs-table-bg-type: #f6f8f8;
}

.site-main .list-group-item {
  border-color: #e1e7ea;
  padding: 15px 18px;
  border-radius: 0;
}

.site-main .breadcrumb a {
  color: #356180;
}

.site-main :is(.table) {
  font-size: 15px;
}

.site-main .table thead :is(th,td) {
  background: #e9eff2;
  color: #203b52;
  border-bottom: 2px solid #abc0ca;
  font-weight: 500;
  white-space: nowrap;
}

/* Editorial interior pages. All existing document/body content stays intact. */
.site-main > .container:has(> .breadcrumb) {
  max-width: 1260px;
  padding-top: clamp(29px, 4.5vw, 60px);
  padding-bottom: clamp(60px, 7.5vw, 101px);
}
.site-main > .container:has(> .breadcrumb) > .breadcrumb {
  display: flex;
  gap: 8px;
  margin: 0 0 clamp(26px, 3vw, 42px);
  padding: 0 0 22px;
  border-bottom: 1px solid #d7e0e2;
  letter-spacing: .015em;
}
.site-main > .container:has(> .breadcrumb) > .row:first-of-type > [class*="col-"] {
  min-width: 0;
}
.site-main > .container:has(> .breadcrumb) > .row:first-of-type > .col-lg-9,
.site-main > .container:has(> .breadcrumb) > .row:first-of-type > .col-lg-8,
.site-main > .container:has(> .breadcrumb) > .row:first-of-type > .col-lg-6:first-child {
  padding: clamp(24px, 3.25vw, 44px) clamp(24px, 3.25vw, 46px);
  background: #fbfaf7;
  border: 1px solid #e8e7e1;
  border-top: 4px solid #b08b59;
  color: #263f54;
  line-height: 1.9;
}
.site-main > .container:has(> .breadcrumb) > .row:first-of-type > .col-lg-9 > :is(h1,h2,h3):first-child,
.site-main > .container:has(> .breadcrumb) > .row:first-of-type > .col-lg-8 > :is(h1,h2,h3):first-child,
.site-main > .container:has(> .breadcrumb) > .row:first-of-type > .col-lg-6:first-child > :is(h1,h2,h3):first-child {
  position: relative;
  margin: 0 0 32px;
  padding-bottom: 25px;
  border-bottom: 1px solid #d4d9d6;
  color: #102e45 !important;
}
.site-main > .container:has(> .breadcrumb) > .row:first-of-type > .col-lg-9 > :is(h1,h2,h3):first-child::after,
.site-main > .container:has(> .breadcrumb) > .row:first-of-type > .col-lg-8 > :is(h1,h2,h3):first-child::after,
.site-main > .container:has(> .breadcrumb) > .row:first-of-type > .col-lg-6:first-child > :is(h1,h2,h3):first-child::after {
  content: "";
  position: absolute;
  width: 78px;
  height: 3px;
  background: #b08b59;
  left: 0;
  bottom: -2px;
}
.site-main > .container:has(> .breadcrumb) > .row:first-of-type > .col-lg-3 {
  padding: 12px clamp(18px,2.8vw,34px);
  text-align: center;
}
.site-main > .container:has(> .breadcrumb) > .row:first-of-type > .col-lg-3 > img,
.site-main > .container:has(> .breadcrumb) > .row:first-of-type > .col-lg-3 > a > img {
  width: auto;
  height: auto;
  max-height: none;
  max-width: 100%;
  border-radius: 2px;
  box-shadow: 0 13px 32px rgba(20,45,72,.075);
}
.site-main > .container:has(> .breadcrumb) :is(h2,h3) {
  scroll-margin-top: 110px;
}
.site-main > .container:has(> .breadcrumb) a:not(.btn):hover { color: #8b632f; }

/* v2026.10.24.8 | content reading width and section rhythm, no text changes */
.site-main:not(:has(.ca-hero)){background:#faf9f6;}
.site-main:not(:has(.ca-hero))>.container{max-width:1180px;margin-inline:auto;padding-top:clamp(44px,4.5vw,70px);padding-bottom:clamp(51px,6.5vw,81px);}
.site-main:not(:has(.ca-hero)) :is(.card,.accordion-item){border:1px solid #dce2e4;border-radius:4px;box-shadow:0 9px 26px rgba(10,36,56,.045);background:#fff;}
.site-main:not(:has(.ca-hero)) .card-header{background:#112e43;color:#fff;border-radius:0;border-bottom:0;}
.site-main:not(:has(.ca-hero)) .card-header a{color:#fff;}
.site-main:not(:has(.ca-hero)) :is(h1,h2,h3){font-family:inherit;}
.site-main:not(:has(.ca-hero)) .table-responsive{background:#fff;border:1px solid #e0e5e5;}
.site-main:not(:has(.ca-hero)) .btn-primary{background:#173f5c;border-color:#173f5c;}
.site-main:not(:has(.ca-hero)) .btn-primary:hover{background:#0f2f47;border-color:#0f2f47;}

/* Notary notice: conspicuous and limited to the public notary page. */
.calegal-notary-warning{background:#fff8e9;border:2px solid #bf8427;border-left:8px solid #c06b16;padding:24px 28px;margin:24px 0 34px;box-shadow:0 10px 30px rgba(89,53,12,.08);color:#402a16}
.calegal-notary-warning h2{font-size:clamp(23px,2.4vw,31px);font-weight:700;color:#8a3a14;margin:0 0 18px}
.calegal-notary-warning p{font-size:clamp(18px,1.7vw,23px);line-height:1.7;margin-bottom:13px}
.calegal-notary-warning .calegal-notary-critical{font-weight:800;color:#a62121;border-top:1px solid #d8aa65;padding-top:15px;margin-bottom:0}


/* 독립 페이지 제목 및 공증 샘플 인쇄 전용 이미지 */
.trust-heading{overflow-wrap:normal;word-break:keep-all}
.trust-heading span[lang="en"]{display:inline-block;font-size:clamp(19px,2.25vw,30px);font-weight:500;line-height:1.35;letter-spacing:-.02em;white-space:nowrap}
.notary-sample{display:inline-block;vertical-align:top;margin:3px}
.notary-sample .notary-sample-online{display:inline-block;height:auto}
.notary-sample .notary-sample-print{display:none}
@media print{
 .notary-sample .notary-sample-online{display:none!important}
 .notary-sample .notary-sample-print{display:inline-block!important;width:2in!important;height:auto!important;max-width:none!important}
}

/* 고객 계정 영역만 적용 */
.ca-customer-page{padding-top:clamp(30px,4vw,62px);padding-bottom:clamp(44px,5vw,76px)}
.ca-customer-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;padding-bottom:24px;border-bottom:1px solid #dce3e7;margin-bottom:30px}
.ca-customer-heading h1{font-size:clamp(32px,3.8vw,50px);line-height:1.18;color:#102d44;margin:8px 0}
.ca-customer-heading p{margin:0;color:#587080;font-size:17px}
.ca-customer-eyebrow,.ca-customer-tile>span{display:block;color:#a07841;font-size:12px;font-weight:700;letter-spacing:.09em}
.ca-customer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.ca-customer-tile{display:flex;flex-direction:column;min-height:240px;padding:30px;background:#fff;border:1px solid #e0e6e8;border-top:4px solid #c4a16d;color:#132e45;text-decoration:none;transition:box-shadow .15s}
.ca-customer-tile:hover{box-shadow:0 14px 38px rgba(10,32,52,.1);color:#132e45}
.ca-customer-tile h2{font-size:25px;margin:24px 0 12px}.ca-customer-tile p{font-size:16px;line-height:1.75;color:#556976;margin:0 0 24px}
.ca-customer-tile strong{margin-top:auto;color:#966d38}
.ca-customer-empty,.ca-customer-form{background:#fff;border:1px solid #dce3e7;padding:clamp(25px,4vw,46px)}
.ca-customer-empty h2{font-size:24px;color:#17354c}.ca-customer-empty p{color:#617482;font-size:16px}
.ca-customer-form{max-width:660px}.ca-customer-form .form-control{min-height:48px}
@media(max-width:991.98px){.ca-customer-grid{grid-template-columns:1fr}.ca-customer-tile{min-height:0}.ca-customer-heading{align-items:start}} 
@media(max-width:575.98px){.ca-customer-heading{flex-direction:column;align-items:stretch}.ca-customer-tile{padding:24px}.ca-customer-page{padding-inline:15px}}

/* 서비스 신청: 기존 고객 페이지 스타일을 확장해 재사용 */
.ca-application-area{padding-top:28px;padding-bottom:58px}
.ca-application-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0 36px}
.ca-application-choices a{display:flex;flex-direction:column;min-width:0;padding:26px 23px;border:1px solid #d9e0e3;border-top:4px solid #b89a6b;background:#fff;text-decoration:none;color:#213f52;gap:12px;box-shadow:0 9px 25px rgba(11,37,55,.045)}
.ca-application-choices strong{font-size:23px}.ca-application-choices span{line-height:1.7;color:#536775}.ca-application-choices em{font-style:normal;margin-top:auto;color:#8a672e;font-weight:700}
.ca-app-panel{padding:27px 29px;margin-bottom:16px;border:1px solid #dce2e4;background:#fff;box-shadow:0 8px 24px rgba(12,38,56,.035)}
.ca-app-panel h2{font-size:23px!important;color:#142f42;margin:0 0 14px}.ca-app-panel p{line-height:1.7}.ca-app-hint{font-size:14px;color:#63737f;margin-bottom:18px}
.ca-app-checkgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.ca-app-check{display:flex;gap:11px;padding:15px;border:1px solid #d7dfe4;background:#fbfcfc;cursor:pointer;align-items:flex-start}.ca-app-check input{margin-top:6px;accent-color:#21435c}.ca-app-check strong{display:block;font-size:17px}.ca-app-check small{display:block;color:#687e8b}
.ca-app-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.ca-app-fields label{display:block;min-width:0}.ca-app-fields label span,.ca-app-block-label{display:block;font-size:15px;font-weight:600;color:#2b485a;margin-bottom:6px}.ca-app-fields .ca-wide{grid-column:1/-1}
.ca-app-form input[type=text],.ca-app-form input:not([type]),.ca-app-form textarea,.ca-app-form input[type=email]{width:100%;padding:10px 12px;border:1px solid #bfcbd1;border-radius:3px;background:#fff;color:#1a3448;font-size:16px;min-height:45px}.ca-app-form textarea{resize:vertical;line-height:1.65}
.ca-app-conditional[hidden]{display:none!important}.ca-app-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:18px 0}.ca-app-options label{line-height:1.55}.ca-app-options input{accent-color:#1c4966}
.ca-app-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:15px 0 35px}.ca-app-actions span{font-size:13px;color:#5c6d77}.ca-app-subhead{font-size:25px;margin:26px 0 15px}.ca-app-empty{padding:30px;background:#f5f6f6;border:1px solid #dbe2e5}.ca-app-table th{white-space:nowrap;background:#e9eef0;color:#14354c}.ca-app-table td{vertical-align:middle}.ca-app-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ca-app-detail-grid div{padding:12px;background:#f4f6f7}.ca-app-detail-grid dt{color:#526779}.ca-app-detail-grid dd{font-weight:600;white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:850px){.ca-application-choices{grid-template-columns:1fr}.ca-application-choices a{padding:20px}.ca-app-panel{padding:20px 18px}.ca-app-fields,.ca-app-checkgrid,.ca-app-options,.ca-app-detail-grid{grid-template-columns:1fr}}

/* v2026.10.24.28 | Page-specific premium right-side portraits and consistent length.
   Retain all site copy, document-sample thumbnails, and existing brand marks. */
.site-main img[src$="/images/notary-right-1-min.jpg"],
.site-main img[src$="/images/living-trust-right.jpg"]{
  display:block;width:100%!important;max-width:250px!important;
  height:580px!important;max-height:580px!important;
  object-fit:cover;object-position:center 47%;
  margin:0 auto 24px;border-radius:2px;
  box-shadow:0 18px 38px rgba(20,45,72,.11);
}
/* Footer navigational button/list text should have normal weight, not bold. */
.site-main .foot-menu, .foot-menu, .ca-foot-links a,
.site-main .row:last-child .foot-menu{font-weight:400!important}
@media(max-width:991.98px){
  .site-main img[src$="/images/notary-right-1-min.jpg"],
  .site-main img[src$="/images/living-trust-right.jpg"]{width:min(250px,100%)!important;height:480px!important;max-height:480px!important}
}
@media print{
  .site-main img[src$="/images/notary-right-1-min.jpg"],
  .site-main img[src$="/images/living-trust-right.jpg"]{box-shadow:none!important}
}


/* ===== forms.css ===== */
/* CA Legal 2026.10.24.5 | Forms / login / shared controls / dialogs */

.card-header:first-child {
  background-color: #1f4770;
}

.card-header {
  color: #ffffff;
  padding: .4rem 1.5rem;
  border-radius: 6px !important;
}

.customModal {
  display: none;
  position: fixed;
  z-index: 9999;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.8);
  overflow: auto;
  text-align: center;
  padding-top: 5%;
}

.customModalImg {
  margin: auto;
  display: block;
  max-width: 80%;
  max-height: 80%;
  box-shadow: 0 0 20px #000;
  border-radius: 8px;
}

.customClose, .customClose2 {
  position: absolute;
  top: 20px;
  right: 35px;
  font-size: 40px;
  color: #fff;
  cursor: pointer;
}

.price-div {
  border: 1px solid #c8cbcf;
  background-color: #ebebeb;
  border-radius: 8px;
  padding: 10px 25px;
}

:where(a, button, input, select, textarea):focus-visible {
  outline: 3px solid #3f80c1;
  outline-offset: 3px;
}

.site-main :is(.card, .alert, .price-div) {
  border-radius: var(--site-radius);
}

.site-main .card {
  border-color: var(--site-border);
  box-shadow: var(--ca-shadow);
  border: 1px solid #e2e7ea;
}

.site-main .card-header {
  border-radius: var(--site-radius) var(--site-radius) 0 0 !important;
}

.site-main .card-header:first-child {
  background-color: var(--site-blue);
  background: #173a56 !important;
  border-radius: 0 !important;
  padding: 13px 18px;
}

.site-main .card-header :is(a, h1, h2, h3, h4) {
  color: #fff;
}

.site-main .card-body {
  padding: clamp(1rem, 2.1vw, 1.4rem);
}

.site-main .btn {
  white-space: normal;
  border-radius: 2px;
  font-size: 15px;
  font-weight: 650;
  padding: 9px 16px;
}

.site-main .btn-primary {
  background-color: #233f5b;
  border-color: #233f5b;
}

.site-main .btn-primary:hover {
  background-color: var(--site-blue-dark);
  border-color: #1b344b;
  background: #1b344b;
}

.site-main .form-control, .site-main .form-select {
  min-width: 0;
  border-color: #bdccd9;
  border-radius: 8px;
}

.site-main .form-control:focus, .site-main .form-select:focus {
  border-color: #456e8a;
  box-shadow: 0 0 0 .18rem rgba(28,75,108,.1);
}

.site-main :is(.pagination, .input-group, .d-flex) {
  max-width: 100%;
}

.site-main .pagination {
  flex-wrap: wrap;
  gap: 4px;
}

.site-main :is(input, textarea, select) {
  max-width: 100%;
}

:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid var(--ca-bronze) !important;
  outline-offset: 3px;
}

.site-main :is(.ratio,.card,.price-div) {
  overflow: hidden;
  border-radius: var(--ca-radius);
}

.site-main .card-header :is(h1,h2,h3,h4,a) {
  color: white !important;
}

.site-main :is(.form-control,.form-select) {
  min-height: 45px;
  border-color: #ccd6de;
  font-size: 16px;
  border-radius: 2px;
}

.site-main .form-label {
  font-size: 15px;
  font-weight: 750;
  color: #4d6071;
}

.site-main .btn-sm {
  padding: 5px 10px;
}

.site-main .btn-secondary {
  background: #718193;
  border-color: #718193;
}

.site-main .alert {
  border-radius: 9px;
  font-size: 14px;
}

.site-main .page-link {
  color: #24445f;
  border-color: #dce3e8;
  border-radius: 5px;
}

.site-main .active > .page-link {
  background-color: var(--ca-navy);
  border-color: var(--ca-navy);
}

.site-main input[type=radio], .site-main input[type=checkbox] {
  accent-color: #264761;
}

.site-main > .container.login-page {
  padding-top: clamp(35px, 5vw, 80px);
  padding-bottom: clamp(60px, 7vw, 105px);
}

.login-shell {
  display: grid;
  grid-template-columns: .9fr 1fr;
  border: 1px solid #e1e7e9;
  border-radius: 13px;
  overflow: hidden;
  box-shadow: 0 18px 55px rgba(19,39,58,.07);
  max-width: 930px;
  margin-inline: auto;
}

.login-side {
  background: #153650;
  color: #e7eff5;
  padding: clamp(30px, 5vw, 65px);
  display: flex;
  align-items: start;
  justify-content: center;
  flex-direction: column;
  position: relative;
  overflow: hidden;
}

.login-side::after {
  content: "";
  width: 340px;
  height: 340px;
  position: absolute;
  right: -180px;
  top: -100px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 50%;
}

.site-main .login-side h1 {
  font-size: clamp(30px, 3vw, 42px) !important;
  color: #fff !important;
  margin: 19px 0 11px;
  font-weight: 400;
}

.login-side p {
  font-size: 14px;
  color: #cbd9e3;
}

.login-side .eyebrow {
  color: #dfc198;
}

.login-side-mark {
  color: #738ca0;
  font-weight: 800;
  letter-spacing: .2em;
  margin-top: 78px;
  font-size: 12px;
}

.login-form-panel {
  padding: clamp(28px, 5vw, 60px);
  background: #fff;
}

.site-main .login-form-panel h2 {
  font-size: 31px !important;
  color: var(--ca-navy) !important;
  margin: 14px 0 29px;
  font-weight: 400;
}

.login-form-panel .form-label {
  display: block;
}

.login-form-panel .form-control {
  min-height: 49px;
}

.login-form-panel .login-submit {
  min-height: 49px;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 24px;
}

.login-help {
  display: flex;
  gap: 12px;
  justify-content: center;
  padding-top: 26px;
  font-size: 13px;
}

.login-help a {
  color: #52677a;
}

button,input,select,textarea {
  font-family: inherit;
}

::selection {
  background: #b8d0e0;
  color: #0d283f;
}

.site-main :is(.card) {
  border-radius: 2px;
}

.site-main .login-shell {
  border-radius: 2px;
  border-color: #dce2e2;
  box-shadow: 0 20px 52px rgba(16,42,64,.1);
}


/* ===== admin.css ===== */
/* CA Legal 2026.10.24.5 | Admin dashboard / tables / journal / DataTables */

.site-main :is(.dataTables_wrapper, .dt-container) {
  max-width: 100%;
}

.site-main .dataTables_wrapper .row {
  row-gap: .7rem;
}

.site-main .dataTables_wrapper :is(.dataTables_filter, .dataTables_length) {
  max-width: 100%;
}

.site-main .dataTables_wrapper input {
  max-width: 100%;
}

.site-main :is(.dt-container,.dataTables_wrapper) {
  font-size: 14px;
}

.site-main > .container.admin-dashboard-page {
  padding-block: clamp(35px, 5vw, 70px);
}

.dashboard-heading {
  padding-bottom: 24px;
  border-bottom: 1px solid #e3e9ec;
  margin-bottom: 25px;
  border-color: #b5c6cd;
}

.dashboard-heading-row {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 18px;
}

.site-main .dashboard-heading h1 {
  margin: 12px 0 9px;
  font-size: 35px !important;
  font-weight: 400;
}

.dashboard-heading p {
  color: #748291;
  margin: 0;
  font-size: 13px;
}

.dashboard-tiles {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 20px;
}

.dashboard-tile {
  display: flex;
  flex-direction: column;
  padding: 27px 24px 24px;
  border: 1px solid #dee6e9;
  border-radius: 11px;
  background: #fff;
  min-height: 225px;
}

.dashboard-tile-label {
  color: #b18b61;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .13em;
}

.site-main .dashboard-tile h2 {
  font-size: 26px !important;
  margin: 24px 0 9px;
  color: var(--ca-navy) !important;
  font-weight: 400;
}

.dashboard-tile p {
  color: #6d7c8b;
  font-size: 13px;
  flex: 1;
}

.dashboard-tile-actions {
  border-top: 1px solid #e8edef;
  margin-top: 25px;
  padding-top: 12px;
  display: flex;
  align-items: center;
  gap: 14px;
  justify-content: space-between;
}

.dashboard-tile-main {
  color: #294963;
  display: flex;
  gap: 20px;
  justify-content: space-between;
  flex: 1;
  text-decoration: none;
  font-weight: 750;
  font-size: 13px;
}

.dashboard-tile-sub {
  font-size: 12px;
  color: #71808a;
  text-decoration: none;
  border-left: 1px solid #e2e6e8;
  padding-left: 13px;
}

.site-main > .container:not(.login-page):not(.admin-dashboard-page), .site-main > .container-fluid {
  max-width: 1220px;
}

.site-main > .container:not(.login-page):not(.admin-dashboard-page) {
  padding-top: clamp(35px,4.5vw,65px);
  padding-bottom: clamp(70px,8vw,105px);
}

.site-main .table-responsive,.site-main .site-table-scroll,.site-main .dt-scroll-body {
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.site-main .dashboard-tile {
  border-radius: 2px;
  border: 1px solid #d9e4e7;
  padding: 32px;
  background: #fff;
}

.site-main .dashboard-tile:first-child {
  border-top: 5px solid #af8757;
}

.site-main .dashboard-tile:nth-child(2) {
  border-top: 5px solid #42708c;
}

.site-main .dashboard-tile:nth-child(3) {
  border-top: 5px solid #173b58;
}

.dashboard-tile p,.dashboard-tile-main {
  font-size: 16px;
}

.admin-journal-page .admin-journal-header {
  display: grid;
  gap: 20px;
  padding-bottom: 24px;
  margin-bottom: 18px;
  border-bottom: 1px solid #cbd9de;
}

.admin-journal-page .admin-journal-header h1 {
  margin: 0;
}

.admin-journal-page .admin-journal-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  align-items: center;
}

.admin-journal-page .admin-journal-actions .form-select {
  width: auto;
  max-width: 100%;
  font-size: 16px !important;
}

.admin-journal-page .admin-journal-search {
  max-width: 520px;
  width: 100%;
}

.admin-access-page {
  max-width: 1230px;
  margin-inline: auto;
  width: 100%;
  padding-inline: max(16px,calc((100vw - 1250px)/2));
  padding-block: 45px 90px;
}

.admin-access-page h2 {
  border-bottom: 1px solid #cbd9de;
  padding-bottom: 18px;
}

/* 회원관리 영역에서만 사용하는 공통 폼·목록 스타일 */
.admin-member-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:20px}
.site-main .admin-member-heading h1{margin:0!important;color:#0c2a45!important;font-weight:650!important;font-size:clamp(28px,3vw,38px)!important}
.site-main .admin-member-card{border:1px solid #dce4e8;border-top:5px solid #c6a065;border-radius:12px;overflow:hidden;box-shadow:0 18px 40px rgba(8,34,57,.055);background:white}
.site-main .admin-member-card .card-header{background:#102d45;color:#fff;padding:18px 25px;font-weight:600;letter-spacing:.01em}
.site-main .admin-member-card .card-body{padding:clamp(20px,3vw,38px)}
.site-main .admin-member-card .form-label{color:#244159;font-weight:650;font-size:15px}
.site-main .admin-member-card :is(.form-control,.form-select){border-color:#cad7dd;border-radius:7px;min-height:45px}
.site-main .admin-member-card :is(.form-control,.form-select):focus{border-color:#ae936d;box-shadow:0 0 0 .19rem rgba(188,160,108,.17)}
.site-main .admin-member-card .btn-primary{background:#103954;border-color:#103954;min-width:132px}
.site-main .admin-member-card .btn-primary:hover{background:#28546d}
@media(max-width:600px){.site-main .admin-member-card .card-body{padding:19px}.site-main .admin-member-card .card-header{padding:16px}}

/* 관리자 접속기록 설정 영역 */
.ca-access-tools{border:1px solid #dfe5e8;border-top:3px solid #bca171;background:#fff;padding:24px}
.ca-access-tools-form{display:flex;align-items:end;flex-wrap:wrap;gap:14px}
.ca-access-tools-form .form-control{width:180px;min-height:44px}
.ca-access-tools-form .btn{min-height:44px}
@media(max-width:575.98px){.ca-access-tools{padding:18px}.ca-access-tools-form>div,.ca-access-tools-form .form-control{width:100%}}


/* ===== footer.css ===== */
/* CA LEGAL | footer; exact original visible words only | v2026.10.24.10 */
.site-footer{margin:0!important;padding:46px 0 27px!important;border-top:5px solid #bda06d;background:#091d2e!important;color:#e2ebed!important}
.site-footer-main{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(250px,.8fr);align-items:end;gap:36px;padding-bottom:35px}
.site-footer-identity{padding:0;margin:0}
.site-footer-name{font-family:inherit;font-size:clamp(26px,2.5vw,34px);line-height:1.3;color:#fff!important;letter-spacing:-.025em;margin:0 0 14px!important}
.site-footer-accent{height:3px;width:100px;background:#bda06d}
.site-footer-address{text-align:right}
.site-footer-address p{margin:0 0 13px;font-size:17px;color:#c4d0d7;line-height:1.8}
.site-footer-address a{color:#f4f4f2;font-family:inherit;font-size:clamp(24px,3vw,37px);line-height:1.3;letter-spacing:-.03em}
.site-footer-address a:hover{color:#d0ad73}
.site-footer-bottom{display:flex;align-items:end;justify-content:space-between;gap:22px 48px;padding-top:20px;border-top:1px solid rgba(255,255,255,.16)}
.site-footer-bottom p{font-size:14px;color:#b5c7ce;line-height:1.8;margin:0}


/* ===== responsive.css ===== */
/* CA LEGAL | viewport-specific rules, no desktop style duplication | v2026.10.24.16 */
@media(max-width:1199.98px){.ca-service-inner{min-height:310px}}
@media(max-width:991.98px){
 .site-header .site-navbar{flex-wrap:wrap;min-height:76px;padding-block:12px}
 .site-brand{max-width:240px}.site-brand #logo{width:min(100%,240px)}
 .site-nav-toggle{display:inline-flex!important}
 .site-header .site-nav-collapse{flex-basis:100%;width:100%;border-top:1px solid #e5e9e9;margin-top:12px;padding:11px 0 18px;max-height:75vh;overflow-y:auto}
 .site-header .site-nav-list{flex-direction:column;align-items:stretch;width:100%;max-height:none;gap:0}
 .site-header .site-nav-list>.nav-item{width:100%;border-bottom:1px solid #e8ecec}
 .site-header .site-nav-pair{width:100%}
 .site-header .site-nav-list .nav-link,.site-header .site-nav-list .site-nav-label{flex:1;min-height:52px;padding:13px 14px!important;text-align:left;white-space:normal;font-size:17px!important}
 .site-header .site-submenu-toggle{flex:0 0 52px;width:52px;min-height:52px;margin:0;border-left:1px solid #e8ecec}
 .site-header .site-dropdown-menu{position:static!important;display:none!important;visibility:visible;opacity:1;pointer-events:auto;width:100%;max-width:none;min-width:0;margin:0;padding:8px 10px 14px 19px;border:0;border-top:1px solid #e8ecec;border-radius:0;box-shadow:none;background:#f6f6f3}
 .site-header .site-dropdown.is-open>.site-dropdown-menu{display:block!important}
 .site-header .site-dropdown-menu .dropdown-item{font-size:16px;padding:12px 14px}
  .ca-hero-shell{min-height:460px;padding:38px 36px 46px}
 .ca-hero-content{width:min(100%,750px)}
 .ca-hero-brand,.ca-hero-brand span{font-size:clamp(60px,8.8vw,88px)!important}
 .ca-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .ca-about-grid{grid-template-columns:minmax(0,1fr) minmax(210px,.7fr);gap:25px}
 .ca-qa-list ol{grid-template-columns:1fr}
 .ca-embed-grid{grid-template-columns:1fr}
 .site-footer-main{gap:26px}
}
@media(max-width:767.98px){
 body{font-size:17px!important;line-height:1.78}
 .site-topbar-inner{min-height:39px;gap:10px;padding-block:4px}
 .site-topbar-actions a{min-height:0;padding:0;font-size:15px}
 .site-topbar-intro{font-size:12px;line-height:1.4}
 .site-main:not(:has(.ca-hero)){padding-top:18px}
 .site-main :is(.container,.container-fluid){padding-left:18px;padding-right:18px}
 .site-main .row{--bs-gutter-x:1.2rem}.site-main .card{margin-bottom:.8rem}.site-main .card-body{padding:1.15rem}
 .site-main :is(.btn,.form-control,.form-select){min-height:43px}.site-main .input-group{flex-wrap:wrap;row-gap:.6rem}
 .site-main .text-nowrap{white-space:normal!important}.site-main .table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}
 /* Mobile: separate large original copy from a bright uncropped photograph; no clipping. */
 .ca-hero{border:0}
 .ca-hero::before{background:linear-gradient(180deg,rgba(249,248,244,.96),rgba(249,248,244,.96)),url('/images/calegal-hero-premium-restored-20261024.jpg') center/cover no-repeat}
 .ca-hero-shell{display:block;min-height:0;padding:48px 17px 42px}
 .ca-hero-content{width:100%;gap:27px}
 .ca-hero-brand{gap:10px;letter-spacing:-.06em}
 .ca-hero-brand,.ca-hero-brand span{font-size:clamp(47px,12vw,79px)!important}
 .ca-hero-subtitle{font-size:16px}
 .ca-hero-korean{font-size:29px}
 .ca-hero-services{font-size:18px;line-height:1.8;padding-top:25px}
 .ca-hero-services>div{margin-bottom:5px}
 .ca-copy-carousel{min-height:220px}
 .ca-copy-carousel .carousel-inner{min-height:186px}
 .ca-hero-services{font-size:17px}
 .ca-hero-mobile-image{display:block;height:180px;margin:8px -17px -42px;background:url('/images/calegal-hero-premium-restored-20261024.jpg') 63% center/cover no-repeat;border-top:1px solid rgba(182,146,87,.26)}
 .ca-hero::after{height:3px}
 .ca-home-services{padding:62px 0 70px}
 .ca-section-heading{gap:16px;margin-bottom:24px;padding-bottom:18px}
 .ca-section-heading h2,.ca-section-heading h2 a{font-size:clamp(32px,8vw,44px)!important}
 .ca-services-grid{grid-template-columns:1fr;gap:13px}
 .ca-service-inner{min-height:0;padding:25px 27px 27px}
 .ca-service-title{font-size:32px!important;margin-bottom:14px!important}
 .ca-service-number{margin-bottom:21px}
 .ca-service-body{font-size:18px;line-height:1.87}
 .ca-home-about{padding:66px 0}.ca-about-grid{grid-template-columns:1fr;gap:34px}
 .ca-about-copy{font-size:19px;line-height:1.93;padding:12px 0 12px 22px}
 .ca-about-emblem{min-height:270px}.ca-about-emblem img{width:175px}
 .ca-home-qa{padding:70px 0}.ca-qa-list li{padding:23px 0 27px 48px;font-size:17px;line-height:1.81}.ca-qa-list li::before{top:26px;font-size:16px}
 .ca-home-contact{padding:66px 0}.ca-location-row{grid-template-columns:1fr;padding:29px 23px;gap:20px}.ca-parking img{width:145px}
 .site-footer{padding:40px 0 24px!important}.site-footer-main{grid-template-columns:1fr;gap:21px;padding-bottom:25px}.site-footer-name{font-size:29px}.site-footer-address{text-align:left}.site-footer-address a{font-size:27px}.site-footer-bottom{flex-direction:column;align-items:start;gap:18px}
}
@media(max-width:575.98px){
 .site-topbar-inner{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:3px;padding-block:6px;min-height:0}
 .site-topbar-actions{justify-content:center}
 .site-topbar-actions a{min-height:0;padding:0;font-size:15px}
 .site-topbar-intro{justify-content:center;text-align:center;font-size:11px;line-height:1.4;gap:6px;overflow-wrap:anywhere}
 .site-topbar-intro .site-topbar-icon{width:14px;height:14px;flex-basis:14px}
}
@media(max-width:400px){.ca-hero-brand,.ca-hero-brand span{font-size:clamp(44px,11.8vw,50px)!important}.site-brand{max-width:205px}.site-brand #logo{width:200px}}

