/* Local single-page trial. Existing copy, links and service terms stay intact. */
.cg-loaders { --ink:#123c50; --line:#d8e6ec; font-size:17px; line-height:1.7; color:var(--ink); }
.cg-loaders > .wrap { padding-top:14px; }
.cg-loaders .wrap { width:min(1120px,calc(100% - 48px)); }
.cg-loaders .breadcrumbs { padding:0 0 12px; }
.cg-loaders.apartment-1 .service-intro {
  grid-template-columns:minmax(0,1.12fr) minmax(0,1fr); gap:36px;
  padding:36px; border-radius:20px; border:1px solid #dbe7eb;
  background:linear-gradient(120deg,#f0f7fa 55%,#edf5ef);
}
.cg-loaders .service-eyebrow { color:#287342; font-weight:700; letter-spacing:.06em; margin-bottom:18px; }
.cg-loaders.apartment-1 .service-intro h1 { font-size:clamp(32px,3.1vw,44px); line-height:1.12; letter-spacing:-1.3px; margin-bottom:22px; }
.cg-loaders .lead p { font-size:17px; line-height:1.65; }
.cg-loaders.apartment-1 .intro-visual { padding:0; border-radius:14px; background:transparent; box-shadow:none; }
.cg-loaders.apartment-1 .intro-visual img { aspect-ratio:1.08; object-fit:cover; border-radius:14px; }
.cg-loaders.apartment-1 .intro-contact { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; gap:10.8px; margin-top:24px; width:90%; max-width:522px; }
.cg-loaders.apartment-1 .intro-contact .btn { min-height:72px; width:100%; padding:6px 8px; gap:8px; border-radius:10px; }
.cg-loaders.apartment-1 .intro-contact .btn small { font-size:15.4px; }
.cg-loaders.apartment-1 .intro-contact .btn strong { font-size:23.1px; font-weight:600; letter-spacing:.35px; font-variant-numeric:lining-nums tabular-nums; }
.cg-loaders.apartment-1 .intro-contact .btn-call { display:grid; grid-template-columns:32.4px minmax(0,1fr); column-gap:4px; row-gap:2px; align-content:center; }
.cg-loaders.apartment-1 .intro-contact .btn-call > span { display:contents; }
.cg-loaders.apartment-1 .intro-contact .btn-call small { grid-column:1/-1; grid-row:1; text-align:center; white-space:nowrap; }
.cg-loaders.apartment-1 .intro-contact .btn-call strong { grid-column:2; grid-row:2; margin-top:0; text-align:center; }
.cg-loaders.apartment-1 .intro-contact .btn-call > .icon {
  grid-column:1; grid-row:2; width:32.4px; height:32.4px; padding:6.3px;
  background:linear-gradient(145deg,#56b966,#299441); border:1px solid #8cdb9b;
  box-shadow:inset 1px 1px 1px #d7f9dd80,inset -1px -2px 1px #135d284d,0 3px 0 #155e27,0 5px 8px #103e282b;
}
.cg-loaders.apartment-1 .intro-contact .btn-call > .icon path { filter:drop-shadow(0 1px 0 #166a30); }
.cg-loaders.apartment-1 .intro-contact .btn-max { font-size:15.4px; background:#fff; border:1px solid #cbdde6; }
.cg-loaders.apartment-1 .intro-contact .btn,.cg-loaders .loader-calculator {
  --button-edge:#b5cdd8; box-shadow:0 3px 0 var(--button-edge),0 6px 12px #123c5012;
  transition:transform .15s ease,box-shadow .15s ease,background .15s ease;
}
.cg-loaders.apartment-1 .intro-contact .btn-call { --button-edge:#125d24; }
.cg-loaders .loader-calculator {
  display:inline-flex; align-items:center; justify-content:center; min-height:72px; width:calc((90% - 10.8px)/2); max-width:255.6px;
  padding:8px 12px; margin-top:14.4px; border:1px solid #26769a; border-radius:10px;
  color:#075377; background:#fff; font-size:16.5px; font-weight:650; line-height:1.4; text-align:center; text-decoration:none;
}
.cg-loaders .loader-calculator:hover { background:#fff; }
.cg-loaders.apartment-1 .intro-contact .btn:active,.cg-loaders .loader-calculator:active { transform:translateY(2px); box-shadow:0 1px 0 var(--button-edge),0 2px 5px #123c5012; }
.cg-loaders .section { padding-block:48px; }
.cg-loaders .section h2 { font-size:clamp(27px,2.4vw,34px); line-height:1.2; letter-spacing:-.7px; }
.cg-loaders .section-head { margin-bottom:24px; }
.cg-loaders .section-copy > p { line-height:1.75; margin-bottom:20px; }
.cg-loaders .loader-cards { gap:20px; margin:26px 0 28px; }
.cg-loaders .loader-card {
  padding:26px; border:1px solid #d7e5eb; border-radius:16px;
  background:linear-gradient(#eef6fa 0 152px,#fff 152px); box-shadow:none;
  transition:transform .18s ease,border-color .18s ease;
}
.cg-loaders .loader-card:nth-child(2) { background:linear-gradient(#f0f6ed 0 152px,#fff 152px); }
.cg-loaders .loader-card:nth-child(3) { background:linear-gradient(#f8f3e8 0 152px,#fff 152px); }
.cg-loaders .loader-card .pictogram { width:100%; height:105px; color:#164358; margin:0 0 44px; }
.cg-loaders .loader-card .loader-3d-icon { display:block; width:100%; height:124px; object-fit:contain; margin:0 0 25px; }
.cg-loaders .loader-card h3 { font-size:22px; line-height:1.25; margin:0 0 13px; letter-spacing:-.3px; }
.cg-loaders .loader-card p { font-size:16px; line-height:1.65; }
.cg-loaders.apartment-1 .section-price {
  margin-block:8px; padding:34px 38px; border:1px solid #ccdee7; border-left:5px solid #258951;
  border-radius:16px; background:#f0f6f9;
}
.cg-loaders table { font-size:16px; border-color:#cedfe7; border-radius:10px; box-shadow:0 8px 24px #123c5006; }
.cg-loaders caption { color:#244f63; font-size:15px; padding-bottom:14px; }
.cg-loaders td,.cg-loaders th { padding:17px 22px; }
.cg-loaders thead { background:#103f55; }
.cg-loaders tbody th { color:#14465e; }
.cg-loaders .loader-price-example { padding:22px 24px; background:#fff; border-left:3px solid #287f49; border-radius:0 10px 10px 0; }
.cg-loaders .section-price .section-copy > p:last-child { display:flex; align-items:center; flex-wrap:wrap; gap:16px; }
.cg-loaders .section-price .section-copy > p:last-child a:first-child {
  display:inline-flex; align-items:center; min-height:48px; padding:12px 20px; margin:0;
  border-radius:9px; background:#218838; color:#fff; text-decoration:none; font-weight:700;
}
.cg-loaders .workflow { border-bottom:0; }
.cg-loaders .wf-list { gap:48px; margin:28px 0; }
.cg-loaders .wf-list li {
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px;
  min-height:186px; padding:20px 16px; text-align:center;
  background:#f3f7f9; border:1px solid #dce7ed; border-radius:12px; box-shadow:none;
}
.cg-loaders .wf-list .pictogram { width:34px; height:40px; margin:0; color:#267e52; }
.cg-loaders .wf-list .loader-3d-icon { display:block; width:90px; height:90px; object-fit:contain; flex:none; }
.cg-loaders .wf-list h3 { font-size:17px; line-height:1.4; margin:0; }
.cg-loaders .wf-list li:not(:last-child)::after {
  content:""; position:absolute; left:calc(100% + 3px); top:calc(50% - 18px); width:42px; height:36px;
  background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='44' viewBox='0 0 56 44' fill='none'%3E%3Cpath d='M3 23C16 5 32 41 50 20' stroke='%2354849a' stroke-width='2' stroke-linecap='round' stroke-dasharray='3 5'/%3E%3Cpath d='M42 21L50 20L48 28' stroke='%2354849a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  pointer-events:none;
}
.cg-loaders .wf-list li:nth-child(2)::after {
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='44' viewBox='0 0 56 44' fill='none'%3E%3Cpath d='M3 19C16 38 31 4 51 23' stroke='%2354849a' stroke-width='2' stroke-linecap='round' stroke-dasharray='3 5'/%3E%3Cpath d='M43 22L51 23L49 15' stroke='%2354849a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.cg-loaders .wf-list li:nth-child(3)::after {
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='44' viewBox='0 0 56 44' fill='none'%3E%3Cpath d='M3 26C12 10 23 9 29 23S43 34 51 18' stroke='%2354849a' stroke-width='2' stroke-linecap='round' stroke-dasharray='3 5'/%3E%3Cpath d='M44 21L51 18L52 26' stroke='%2354849a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.cg-loaders section[aria-labelledby="loaders-work"] { padding-top:10px; }
.cg-loaders .loader-work-flow { display:grid; grid-template-columns:1fr 1fr; gap:32px; margin:26px 0; }
.cg-loaders .loader-work-step {
  position:relative; display:grid; grid-template-columns:106px 1fr; align-items:center; gap:20px;
  padding:25px 24px; background:#f0f6f2; border:1px solid #cee1d5; border-radius:14px;
}
.cg-loaders .loader-work-step + .loader-work-step { background:#eff6fa; border-color:#d0e3ed; }
.cg-loaders .loader-work-step:first-child::after {
  content:""; position:absolute; z-index:1; right:-25px; top:50%; width:16px; height:16px;
  border-top:2px solid #4c8968; border-right:2px solid #4c8968; transform:translateY(-50%) rotate(45deg);
}
.cg-loaders .loader-work-step .pictogram { width:106px; height:90px; color:#164358; }
.cg-loaders .loader-work-step .loader-3d-icon { display:block; width:106px; height:90px; object-fit:contain; }
.cg-loaders .loader-work-step p { font-size:17px; line-height:1.65; margin:0; }
.cg-loaders.apartment-1 .apartment-faq { display:block; padding-top:42px; }
.cg-loaders .service-details { padding:0; margin:12px 0; border:1px solid #d5e4ec; border-radius:12px; background:#fff; }
.cg-loaders .service-details summary { min-height:62px; padding:18px 22px; font-size:17px; color:#124a65; }
.cg-loaders .service-details[open] summary { margin:0; border-bottom:1px solid #e3edf2; }
.cg-loaders .service-details p { padding:0 22px 20px; margin:16px 0 0; }
.cg-loaders .snow-closing { padding:34px 38px; border-radius:16px; background:#eaf4ee; border:1px solid #cfe2d6; margin:24px 0 36px; }
.cg-loaders .snow-closing h2 { font-size:30px; }
.cg-loaders .snow-closing .intro-contact { margin-top:20px; }
@media(hover:hover) and (pointer:fine) {
  .cg-loaders.apartment-1 .intro-contact .btn:hover,.cg-loaders .loader-calculator:hover { transform:translateY(-1px); box-shadow:0 4px 0 var(--button-edge),0 8px 14px #123c501a; }
  .cg-loaders.apartment-1 .intro-contact .btn:active,.cg-loaders .loader-calculator:active { transform:translateY(2px); box-shadow:0 1px 0 var(--button-edge); }
  .cg-loaders .loader-card:hover { transform:translateY(-3px); border-color:#85b4c8; box-shadow:none; }
  .cg-loaders .wf-list li:hover { transform:none; box-shadow:none; }
  .cg-loaders .service-details summary:hover { background:#f2f7fa; border-radius:12px; }
}
@media(max-width:1050px) {
  .cg-loaders.apartment-1 .service-intro { grid-template-columns:1.15fr 1fr; padding:28px; gap:28px; }
  .cg-loaders.apartment-1 .intro-contact { grid-template-columns:1fr; }
  .cg-loaders .loader-calculator { width:90%; max-width:522px; }
  .cg-loaders .wf-list { grid-template-columns:1fr 1fr; row-gap:24px; }
  .cg-loaders .wf-list li { grid-row:auto!important; grid-column:auto!important; }
  .cg-loaders .wf-list li:nth-child(2)::after { display:none; }
  .cg-loaders .loader-work-step { grid-template-columns:1fr; gap:10px; }
}
@media(max-width:700px) {
  .cg-loaders .wrap { width:calc(100% - 32px); }
  .cg-loaders > .wrap { padding-top:10px; }
  .cg-loaders.apartment-1 .service-intro { display:block; padding:24px 20px; border-radius:15px; }
  .cg-loaders.apartment-1 .service-intro h1 { font-size:31px; letter-spacing:-.7px; }
  .cg-loaders .lead p { font-size:16px; }
  .cg-loaders.apartment-1 .intro-contact { grid-template-columns:1fr; gap:12px; margin-top:22px; }
  .cg-loaders.apartment-1 .intro-contact .btn { width:100%; min-height:72px; justify-content:center; }
  .cg-loaders.apartment-1 .intro-contact .btn-max { margin-top:0; }
  .cg-loaders .loader-calculator { width:90%; max-width:none; margin-top:12px; text-align:center; }
  .cg-loaders.apartment-1 .intro-visual { margin-top:22px; }
  .cg-loaders.apartment-1 .intro-visual img { aspect-ratio:1.5; }
  .cg-loaders .section { padding-block:34px; }
  .cg-loaders .section-head { margin-bottom:20px; }
  .cg-loaders .section h2 { font-size:27px; }
  .cg-loaders .loader-cards { grid-template-columns:1fr; gap:16px; }
  .cg-loaders .loader-card { padding:23px; }
  .cg-loaders .loader-card h3 { font-size:22px; }
  .cg-loaders.apartment-1 .section-price { padding:25px 18px; border-left-width:3px; }
  .cg-loaders table { display:table; table-layout:fixed; width:100%; white-space:normal; font-size:13px; overflow:visible; }
  .cg-loaders th,.cg-loaders td { padding:12px 7px; vertical-align:top; overflow-wrap:break-word; }
  .cg-loaders caption { font-size:14px; }
  .cg-loaders .loader-price-example { padding:18px 16px; }
  .cg-loaders .section-price .section-copy > p:last-child { display:block; }
  .cg-loaders .section-price .section-copy > p:last-child a:first-child { display:flex; justify-content:center; text-align:center; margin-bottom:12px; }
  .cg-loaders .wf-list { grid-template-columns:1fr; gap:38px; margin-inline:16px; }
  .cg-loaders .wf-list li { flex-direction:row; justify-content:flex-start; min-height:106px; padding:16px 20px; text-align:left; }
  .cg-loaders .wf-list .loader-3d-icon { width:72px; height:72px; }
  .cg-loaders .wf-list li:not(:last-child)::after { display:block; left:calc(50% - 21px); top:calc(100% + 1px); transform:rotate(90deg); }
  .cg-loaders .loader-work-flow { grid-template-columns:1fr; gap:30px; }
  .cg-loaders .loader-work-step { grid-template-columns:78px 1fr; gap:12px; padding:20px 16px; }
  .cg-loaders .loader-work-step .pictogram { width:78px; height:70px; }
  .cg-loaders .loader-work-step .loader-3d-icon { width:78px; height:70px; }
  .cg-loaders .loader-work-step p { font-size:16px; }
  .cg-loaders .loader-work-step:first-child::after { right:calc(50% - 8px); top:auto; bottom:-22px; transform:rotate(135deg); width:12px; height:12px; }
  .cg-loaders .service-details summary { font-size:16px; padding:17px 16px; }
  .cg-loaders .service-details p { padding-inline:16px; }
  .cg-loaders .snow-closing { padding:25px 22px!important; }
  .cg-loaders .snow-closing h2 { font-size:27px; }
}
@media(prefers-reduced-motion:reduce) {
  .cg-loaders .loader-card,.cg-loaders .wf-list li,.cg-loaders .btn,.cg-loaders .loader-calculator { transition:none!important; transform:none!important; }
}

.cg-loaders.apartment-1 .snow-closing .intro-contact .loaders-calc-button { grid-column:1/-1; }
