/* =========================================================
   Service focus pages v1.8.6
   Dedicated visual system for /services/ + selected interior pages.
   ========================================================= */
.sf-page{--sf-ink:#1d2923;--sf-green:#21473a;--sf-mint:#eaf1ed;--sf-paper:#fbfaf6;--sf-line:#d6dfd9;--sf-soft:#f2efe8;color:var(--sf-ink);background:var(--sf-paper)}
.sf-page *{box-sizing:border-box}
.sf-shell{width:min(1240px,calc(100% - 52px));margin-inline:auto}
.sf-section{padding:clamp(78px,8vw,126px) 0;position:relative}
.sf-section:nth-of-type(even){background:#fff}
.sf-kicker{margin:0 0 18px;color:#6b8277;font:italic 500 13px/1.4 Georgia,serif;letter-spacing:.08em}
.sf-heading{margin-bottom:clamp(34px,4vw,62px)}
.sf-heading h2,.sf-heading-grid h2{margin:0;color:var(--sf-ink);font-family:var(--cl-serif,Georgia,serif);font-weight:500;font-size:clamp(40px,5vw,68px);line-height:1.22;letter-spacing:.01em;text-wrap:balance;word-break:keep-all;overflow-wrap:anywhere}
.sf-heading-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:clamp(42px,7vw,112px);align-items:end}
.sf-heading-grid>p{margin:0;font-size:15px;line-height:2;color:#66716b;max-width:none}
.sf-breadcrumbs{padding:18px 0;border-bottom:1px solid rgba(75,100,87,.12);background:rgba(251,250,246,.92)}
.sf-breadcrumbs .breadcrumbs{margin:0}

/* cards */
.sf-card-grid,.sf-scope-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.sf-card{position:relative;padding:30px 30px 34px;border:1px solid var(--sf-line);border-radius:24px;background:rgba(255,255,255,.82);min-height:190px}
.sf-card>span{display:block;margin-bottom:34px;color:#718a7e;font-size:10px;letter-spacing:.16em}
.sf-card h3{margin:0 0 12px;font-family:var(--cl-serif,Georgia,serif);font-size:clamp(22px,2.1vw,30px);font-weight:500;line-height:1.35;word-break:keep-all;overflow-wrap:anywhere}
.sf-card p{margin:0;color:#66716b;font-size:13px;line-height:1.9}
.sf-recommend__grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.72fr);gap:clamp(26px,4.8vw,72px);align-items:stretch}
.sf-side-visual{margin:0;overflow:hidden;border-radius:34px;min-height:100%}
.sf-side-visual img{width:100%;height:100%;object-fit:cover;display:block;transform:translateZ(0)}
.sf-page img{backface-visibility:hidden}
.sf-scope{background:var(--sf-mint)!important}
.sf-scope-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.sf-card--scope{border:0;border-radius:0;background:transparent;border-top:1px solid #bfcfc6;min-height:220px;padding:24px 8px 28px 0}
.sf-card--scope>span{margin-bottom:52px}
.sf-card--scope h3{font-size:25px}

/* check */
.sf-check{background:#fff!important}
.sf-check__grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(42px,7vw,110px);align-items:start}
.sf-check__grid>div:first-child h2{font-family:var(--cl-serif,Georgia,serif);font-size:clamp(40px,4.6vw,64px);line-height:1.25;font-weight:500;margin:0 0 24px;text-wrap:balance}
.sf-check__grid>div:first-child>p:last-child{font-size:14px;line-height:2;color:#68736d;max-width:52ch}
.sf-check-list{display:grid;gap:0;border-top:1px solid var(--sf-line)}
.sf-card--check{border:0;border-radius:0;background:transparent;display:grid;grid-template-columns:60px minmax(180px,.6fr) minmax(0,1fr);gap:18px;min-height:0;padding:26px 0;border-bottom:1px solid var(--sf-line)}
.sf-card--check>span{margin:4px 0 0}
.sf-card--check h3{font-size:22px;margin:0}
.sf-card--check p{align-self:center}

/* process */
.sf-process{background:var(--sf-green)!important;color:#fff}
.sf-process .sf-kicker{color:#a9c1b5}.sf-process .sf-heading h2{color:#fff}
.sf-process-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.25)}
.sf-process-list li{padding:30px 26px 36px;border-right:1px solid rgba(255,255,255,.18);min-height:270px}
.sf-process-list li:last-child{border-right:0}
.sf-process-list span{display:block;color:#9fc0b0;font-size:11px;letter-spacing:.16em;margin-bottom:58px}
.sf-process-list h3{font-family:var(--cl-serif,Georgia,serif);font-size:26px;font-weight:500;margin:0 0 15px;color:#fff;line-height:1.4}
.sf-process-list p{margin:0;color:#cfddd6;font-size:13px;line-height:1.9}

/* FAQ */
.sf-faq{background:#f7f5ef!important}
.sf-faq-list{border-top:1px solid #cad5cf}
.sf-faq-list details{border-bottom:1px solid #cad5cf}
.sf-faq-list summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:48px 1fr auto;gap:18px;align-items:center;padding:26px 4px;font-family:var(--cl-serif,Georgia,serif);font-size:20px;line-height:1.5}
.sf-faq-list summary::-webkit-details-marker{display:none}.sf-faq-list summary span{color:#6f8a7c;font-size:13px}.sf-faq-list summary i{font-style:normal;font-size:20px;color:#638073}
.sf-faq-list details>div{display:grid;grid-template-columns:48px 1fr;gap:18px;padding:0 4px 26px;color:#65716a}.sf-faq-list details>div b{color:#6f8a7c}.sf-faq-list details>div p{margin:0;line-height:1.95}

/* Next */
.sf-next{padding:70px 0 96px;background:#fff;border-top:1px solid var(--sf-line)}
.sf-next-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.sf-next-grid a{display:flex;justify-content:space-between;align-items:center;min-height:94px;padding:24px;border:1px solid var(--sf-line);border-radius:20px;color:inherit;text-decoration:none}.sf-next-grid a:hover{background:var(--sf-mint)}.sf-next-grid span{font-weight:600}.sf-next-grid b{font-weight:400;color:#678477}

/* Services hub */
.sf-hub-intro{padding-bottom:90px}
.sf-hub-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}
.sf-hub-card{grid-column:span 4;display:block;text-decoration:none;color:inherit;background:#fff;border-radius:28px;overflow:hidden;border:1px solid var(--sf-line)}
.sf-hub-card:nth-child(1),.sf-hub-card:nth-child(4){grid-column:span 7}.sf-hub-card:nth-child(2),.sf-hub-card:nth-child(5){grid-column:span 5}.sf-hub-card:nth-child(3),.sf-hub-card:nth-child(6){grid-column:span 6}
.sf-hub-card figure{margin:0;aspect-ratio:16/10;overflow:hidden}.sf-hub-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .55s ease}.sf-hub-card:hover img{transform:scale(1.025)}
.sf-hub-card>div{padding:24px 26px 28px}.sf-hub-card small{font-size:9px;letter-spacing:.16em;color:#72877d}.sf-hub-card h3{margin:8px 0 10px;font-family:var(--cl-serif,Georgia,serif);font-size:28px;font-weight:500}.sf-hub-card p{margin:0 0 18px;color:#65716b;line-height:1.85;font-size:13px}.sf-hub-card span{font-size:11px;letter-spacing:.08em}
.sf-hub-interior{background:var(--sf-mint)!important}
.sf-inline-menu{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.sf-inline-menu a{display:grid;grid-template-columns:44px 1fr auto;align-items:center;min-height:100px;padding:20px 22px;border:1px solid #c8d6ce;border-radius:18px;background:rgba(255,255,255,.7);color:inherit;text-decoration:none}.sf-inline-menu a:hover{background:#fff}.sf-inline-menu span{font-size:10px;color:#6b8578}.sf-inline-menu strong{font-family:var(--cl-serif,Georgia,serif);font-size:22px;font-weight:500}.sf-inline-menu b{font-weight:400;color:#688478}
.sf-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.sf-three a{display:block;padding:30px;border:1px solid var(--sf-line);border-radius:24px;color:inherit;text-decoration:none;background:#fff}.sf-three span{font-size:10px;color:#6d867a}.sf-three h3{font-family:var(--cl-serif,Georgia,serif);font-size:28px;font-weight:500;margin:46px 0 14px}.sf-three p{font-size:13px;line-height:1.9;color:#65716b;margin:0}
.sf-hub-philosophy{background:var(--sf-green)!important;color:#fff}.sf-philosophy-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:clamp(48px,7vw,110px);align-items:end}.sf-philosophy-grid h2{font-family:var(--cl-serif,Georgia,serif);font-size:clamp(42px,5vw,70px);font-weight:500;line-height:1.25;margin:0;color:#fff;text-wrap:balance}.sf-philosophy-grid p{color:#cedbd5;line-height:2;margin:0 0 24px}.sf-philosophy-grid a{color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.55);padding-bottom:6px}

/* unique signature sections */
.sf-special{overflow:hidden}
.sf-priority-grid,.sf-transform-grid,.sf-door-grid,.sf-plan-grid,.sf-heating-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sf-priority-grid article,.sf-transform-grid article,.sf-door-grid article,.sf-plan-grid article,.sf-heating-grid article{padding:30px;border:1px solid var(--sf-line);min-height:250px;background:#fff;border-radius:26px}
.sf-priority-grid span,.sf-transform-grid span,.sf-door-grid span,.sf-plan-grid span,.sf-heating-grid span{font-size:10px;letter-spacing:.15em;color:#698477}.sf-priority-grid h3,.sf-transform-grid h3,.sf-door-grid h3,.sf-plan-grid h3,.sf-heating-grid h3{font-family:var(--cl-serif,Georgia,serif);font-size:28px;font-weight:500;margin:52px 0 14px}.sf-priority-grid p,.sf-transform-grid p,.sf-door-grid p,.sf-plan-grid p,.sf-heating-grid p{font-size:13px;line-height:1.9;color:#66726b;margin:0}
.sf-special--priority{background:#f3efe6!important}.sf-special--interior{background:#e9f0ec!important}.sf-inline-menu--cards{grid-template-columns:repeat(2,minmax(0,1fr))}.sf-inline-menu--cards a{min-height:132px}
.sf-special--swatch{background:#f4efe8!important}.sf-swatch-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.sf-swatch-grid article{position:relative;padding:30px;background:#fff;border-radius:28px;border:1px solid #e0d7ca;min-height:300px}.sf-swatch-grid i{display:block;width:64px;height:64px;border-radius:50%;margin-bottom:44px;background:#e9e4d9}.sf-swatch-grid article:nth-child(2) i{background:#a8b9ae}.sf-swatch-grid article:nth-child(3) i{background:#d9c8ad}.sf-swatch-grid span{font-size:9px;letter-spacing:.15em;color:#8a7c68}.sf-swatch-grid h3{font-family:var(--cl-serif,Georgia,serif);font-size:28px;font-weight:500;margin:12px 0}.sf-swatch-grid p{color:#6b716d;line-height:1.9;font-size:13px}
.sf-special--material{background:#f2f0ea!important}.sf-material-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid #c9c4ba}.sf-material-grid article{padding:28px 24px 38px;border-right:1px solid #c9c4ba}.sf-material-grid article:last-child{border-right:0}.sf-material-grid b{font-size:10px;color:#7e877f}.sf-material-grid h3{font-family:var(--cl-serif,Georgia,serif);font-size:26px;font-weight:500;margin:64px 0 14px}.sf-material-grid p{font-size:13px;line-height:1.9;color:#69716c}
.sf-special--transform{background:linear-gradient(90deg,#f3eee4 0 50%,#eef2ef 50% 100%)!important}.sf-transform-grid article:nth-child(2){transform:translateY(28px)}
.sf-special--doors{background:#eff2ef!important}.sf-door-grid article{border-radius:4px 34px 4px 34px}.sf-door-grid article:nth-child(2){border-radius:34px 4px 34px 4px}
.sf-special--plan{background-color:#eef2ef!important;background-image:linear-gradient(rgba(49,90,73,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(49,90,73,.055) 1px,transparent 1px);background-size:42px 42px}.sf-plan-visual{margin:30px 0 0 auto;width:min(760px,70%);overflow:hidden;box-shadow:0 26px 70px rgba(37,62,50,.12);transform:rotate(-1deg)}.sf-plan-visual img{width:100%;display:block}.sf-plan-grid article{background:rgba(255,255,255,.9)}
.sf-special--heating{background:#f3ede1!important}.sf-heating-grid article{background:rgba(255,255,255,.74);border-color:#ded1bd}.sf-heating-grid article:nth-child(2){transform:translateY(24px)}

/* variant accents */
.sf-page--whole .sf-recommend__grid{grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);align-items:start}
.sf-page--whole .sf-side-visual{min-height:460px;max-width:380px;width:100%;justify-self:end}
.sf-page--interior .sf-recommend .sf-side-visual{border-radius:80px 8px 80px 8px}
.sf-page--wallpaper .sf-side-visual{border-radius:999px 999px 28px 28px}
.sf-page--floor .sf-side-visual{border-radius:10px}
.sf-page--transform .sf-side-visual{border-radius:0}
.sf-page--doors .sf-side-visual{border-radius:4px 70px 4px 70px}
.sf-page--layout .sf-side-visual{clip-path:polygon(0 4%,96% 0,100% 96%,4% 100%);border-radius:0}
.sf-page--heating .sf-side-visual{border-radius:46% 46% 24px 24px}

@media (max-width:1100px){
 .sf-shell{width:min(100%,calc(100% - 40px))}.sf-scope-grid{grid-template-columns:repeat(2,1fr)}.sf-process-list{grid-template-columns:repeat(2,1fr)}.sf-process-list li:nth-child(2){border-right:0}.sf-process-list li{border-bottom:1px solid rgba(255,255,255,.18)}.sf-hub-card:nth-child(n){grid-column:span 6}.sf-material-grid{grid-template-columns:repeat(2,1fr)}.sf-material-grid article:nth-child(2){border-right:0}.sf-material-grid article{border-bottom:1px solid #c9c4ba}
}
@media (max-width:820px){
 .sf-shell{width:min(100%,calc(100% - 28px))}.sf-section{padding:72px 0}.sf-heading-grid,.sf-recommend__grid,.sf-check__grid,.sf-philosophy-grid{grid-template-columns:1fr;gap:26px}.sf-heading h2,.sf-heading-grid h2{font-size:clamp(34px,9vw,48px)}.sf-card-grid,.sf-scope-grid,.sf-three,.sf-inline-menu,.sf-inline-menu--cards,.sf-priority-grid,.sf-transform-grid,.sf-door-grid,.sf-plan-grid,.sf-heating-grid,.sf-swatch-grid,.sf-next-grid{grid-template-columns:1fr}.sf-side-visual{min-height:0!important;aspect-ratio:4/3}.sf-card--check{grid-template-columns:48px 1fr;gap:10px 16px}.sf-card--check p{grid-column:2}.sf-process-list{grid-template-columns:1fr}.sf-process-list li{border-right:0}.sf-hub-grid{grid-template-columns:1fr}.sf-hub-card:nth-child(n){grid-column:auto}.sf-hub-card figure{aspect-ratio:4/3}.sf-material-grid{grid-template-columns:1fr}.sf-material-grid article{border-right:0}.sf-transform-grid article:nth-child(2),.sf-heating-grid article:nth-child(2){transform:none}.sf-plan-visual{width:100%;transform:none}.sf-page--whole .sf-recommend__grid{grid-template-columns:1fr}
}

/* =========================================================
   v1.8.8 — Water-area pages + high-definition image treatment
   ========================================================= */
.sf-page :where(.sf-side-visual img,.sf-hub-card img,.sf-water-menu img,.sf-kitchen-photo-row img,.sf-bath-wide img,.sf-toilet-layout img,.sf-washroom-images img){
  image-rendering:auto;
  object-fit:cover;
}
.sf-page--waterhub .sf-side-visual,
.sf-page--kitchen .sf-side-visual,
.sf-page--bath .sf-side-visual,
.sf-page--toilet .sf-side-visual,
.sf-page--washroom .sf-side-visual{
  min-height:480px;
}
.sf-page--waterhub .sf-recommend__grid,
.sf-page--kitchen .sf-recommend__grid,
.sf-page--bath .sf-recommend__grid,
.sf-page--toilet .sf-recommend__grid,
.sf-page--washroom .sf-recommend__grid{
  grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr);
}

/* Water hub */
.sf-special--waterhub{background:#edf3ef!important}
.sf-water-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.sf-water-menu>a{display:grid;grid-template-columns:minmax(180px,.92fr) minmax(0,1.08fr);min-height:310px;overflow:hidden;border:1px solid #cad8d0;border-radius:28px;background:#fff;color:inherit;text-decoration:none;box-shadow:0 18px 45px rgba(36,70,56,.06)}
.sf-water-menu figure{margin:0;overflow:hidden}
.sf-water-menu img{display:block;width:100%;height:100%;transition:transform .45s ease}
.sf-water-menu>a:hover img{transform:scale(1.025)}
.sf-water-menu>a>div{padding:28px 28px 26px;display:flex;flex-direction:column}
.sf-water-menu small{font-size:9px;letter-spacing:.16em;color:#72877d}
.sf-water-menu h3{font-family:var(--cl-serif,Georgia,serif);font-size:30px;font-weight:500;margin:18px 0 12px}
.sf-water-menu p{font-size:13px;line-height:1.9;color:#66716b;margin:0}
.sf-water-menu span{margin-top:auto;padding-top:24px;font-size:11px;letter-spacing:.08em;color:#587365}

/* Kitchen */
.sf-special--kitchen{background:#f5f0e7!important}
.sf-kitchen-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sf-kitchen-flow article{padding:30px;border-top:1px solid #cfc4b1;background:rgba(255,255,255,.7);min-height:255px}
.sf-kitchen-flow span{font-size:10px;letter-spacing:.15em;color:#8a765d}
.sf-kitchen-flow h3{font-family:var(--cl-serif,Georgia,serif);font-size:27px;font-weight:500;line-height:1.4;margin:52px 0 14px}
.sf-kitchen-flow p{font-size:13px;line-height:1.9;color:#6e6d68;margin:0}
.sf-kitchen-photo-row{display:grid;grid-template-columns:1.15fr .85fr;gap:20px;margin-top:28px}
.sf-kitchen-photo-row figure{margin:0;overflow:hidden;border-radius:28px;aspect-ratio:16/9}
.sf-kitchen-photo-row figure:last-child{aspect-ratio:4/3}
.sf-kitchen-photo-row img{width:100%;height:100%;display:block}

/* Bathroom */
.sf-special--bath{background:#edf3f1!important}
.sf-bath-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sf-bath-grid article{padding:30px 28px 34px;border:1px solid #c9d9d2;border-radius:999px 999px 24px 24px;background:#fff;min-height:300px}
.sf-bath-grid span{font-size:10px;letter-spacing:.15em;color:#688579}
.sf-bath-grid h3{font-family:var(--cl-serif,Georgia,serif);font-size:28px;font-weight:500;margin:70px 0 14px}
.sf-bath-grid p{font-size:13px;line-height:1.9;color:#65716b;margin:0}
.sf-bath-wide{margin:26px 0 0;overflow:hidden;border-radius:30px;aspect-ratio:21/8}
.sf-bath-wide img{display:block;width:100%;height:100%}

/* Toilet */
.sf-special--toilet{background:#f7f4ed!important}
.sf-toilet-layout{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,76px);align-items:stretch}
.sf-toilet-layout>figure{margin:0;overflow:hidden;border-radius:34px;min-height:520px}
.sf-toilet-layout>figure img{display:block;width:100%;height:100%}
.sf-toilet-layout>div{border-top:1px solid #d7d0c4}
.sf-toilet-layout article{display:grid;grid-template-columns:52px minmax(180px,.62fr) minmax(0,1fr);gap:18px;padding:28px 0;border-bottom:1px solid #d7d0c4;align-items:start}
.sf-toilet-layout article span{font-size:10px;color:#807665;margin-top:5px}
.sf-toilet-layout article h3{font-family:var(--cl-serif,Georgia,serif);font-size:25px;font-weight:500;margin:0;line-height:1.45}
.sf-toilet-layout article p{font-size:13px;line-height:1.9;color:#6c6b66;margin:0}

/* Washroom */
.sf-special--washroom{background:#eef2ef!important}
.sf-washroom-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sf-washroom-flow article{padding:28px 26px 32px;border-left:1px solid #c7d3cd;background:rgba(255,255,255,.58);min-height:250px}
.sf-washroom-flow span{font-size:10px;letter-spacing:.15em;color:#6a8579}
.sf-washroom-flow h3{font-family:var(--cl-serif,Georgia,serif);font-size:28px;font-weight:500;margin:58px 0 14px}
.sf-washroom-flow p{font-size:13px;line-height:1.9;color:#65716b;margin:0}
.sf-washroom-images{display:grid;grid-template-columns:.9fr 1.1fr;gap:20px;margin-top:28px}
.sf-washroom-images figure{margin:0;overflow:hidden;border-radius:26px;aspect-ratio:4/3}
.sf-washroom-images figure:last-child{aspect-ratio:16/9}
.sf-washroom-images img{display:block;width:100%;height:100%}

@media(max-width:1100px){
  .sf-water-menu{grid-template-columns:1fr}
  .sf-toilet-layout{grid-template-columns:.9fr 1.1fr;gap:34px}
  .sf-toilet-layout article{grid-template-columns:44px 1fr;gap:8px 14px}
  .sf-toilet-layout article p{grid-column:2}
}
@media(max-width:820px){
  .sf-page--waterhub .sf-recommend__grid,
  .sf-page--kitchen .sf-recommend__grid,
  .sf-page--bath .sf-recommend__grid,
  .sf-page--toilet .sf-recommend__grid,
  .sf-page--washroom .sf-recommend__grid{grid-template-columns:1fr}
  .sf-water-menu>a{grid-template-columns:1fr;min-height:0}
  .sf-water-menu figure{aspect-ratio:16/10}
  .sf-kitchen-flow,.sf-bath-grid,.sf-washroom-flow{grid-template-columns:1fr}
  .sf-kitchen-photo-row,.sf-washroom-images,.sf-toilet-layout{grid-template-columns:1fr}
  .sf-kitchen-photo-row figure,.sf-kitchen-photo-row figure:last-child,.sf-washroom-images figure,.sf-washroom-images figure:last-child{aspect-ratio:4/3}
  .sf-bath-wide{aspect-ratio:4/3}
  .sf-toilet-layout>figure{min-height:0;aspect-ratio:4/3}
  .sf-toilet-layout article{grid-template-columns:44px 1fr}
  .sf-toilet-layout article p{grid-column:2}
}

/* =========================================================
   v1.9.0 — Exterior / barrier-free / repair / renewal pages
   ========================================================= */
.sf-roof-signs,.sf-landscape-grid,.sf-barrier-flow,.sf-repair-grid,.sf-used-timeline,.sf-apartment-rules,.sf-store-flow,.sf-custom-day{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.sf-roof-signs article,.sf-landscape-grid article,.sf-barrier-flow article,.sf-repair-grid article,.sf-used-timeline article,.sf-apartment-rules article,.sf-store-flow article,.sf-custom-day article{padding:30px;border:1px solid var(--sf-line);border-radius:24px;background:rgba(255,255,255,.86);min-height:250px}
.sf-roof-signs span,.sf-landscape-grid span,.sf-barrier-flow span,.sf-repair-grid span,.sf-used-timeline span,.sf-apartment-rules span,.sf-store-flow span,.sf-custom-day span{display:block;color:#6f887c;font-size:10px;letter-spacing:.15em}
.sf-roof-signs h3,.sf-landscape-grid h3,.sf-barrier-flow h3,.sf-repair-grid h3,.sf-used-timeline h3,.sf-apartment-rules h3,.sf-store-flow h3,.sf-custom-day h3{margin:52px 0 14px;font-family:var(--cl-serif,Georgia,serif);font-size:28px;line-height:1.4;font-weight:500}
.sf-roof-signs p,.sf-landscape-grid p,.sf-barrier-flow p,.sf-repair-grid p,.sf-used-timeline p,.sf-apartment-rules p,.sf-store-flow p,.sf-custom-day p{margin:0;color:#66716b;font-size:13px;line-height:1.9}
.sf-roof-visuals,.sf-barrier-images,.sf-used-images,.sf-store-images{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:30px}
.sf-roof-visuals figure,.sf-barrier-images figure,.sf-used-images figure,.sf-store-images figure,.sf-landscape-wide,.sf-repair-wide,.sf-apartment-wide,.sf-custom-wide{margin:0;overflow:hidden;border-radius:28px;background:#e9efeb}
.sf-roof-visuals figure,.sf-barrier-images figure,.sf-used-images figure,.sf-store-images figure{aspect-ratio:16/10}
.sf-landscape-wide,.sf-repair-wide,.sf-apartment-wide,.sf-custom-wide{margin-top:30px;aspect-ratio:16/7}
.sf-roof-visuals img,.sf-barrier-images img,.sf-used-images img,.sf-store-images img,.sf-landscape-wide img,.sf-repair-wide img,.sf-apartment-wide img,.sf-custom-wide img{width:100%;height:100%;display:block;object-fit:cover}
.sf-special--roof{background:#eef1ee!important}
.sf-special--roof .sf-roof-signs article{border-radius:4px;background:#fff}
.sf-special--landscape{background:#edf3ed!important}
.sf-landscape-grid article:nth-child(2){transform:translateY(18px)}
.sf-special--barrier{background:#f5f1e8!important}
.sf-barrier-flow article{border-radius:999px 999px 26px 26px;padding-top:38px}
.sf-special--repair{background:#f3f0e9!important}
.sf-repair-grid article{border-radius:8px}
.sf-special--used{background:#edf2ef!important}
.sf-used-timeline{position:relative}
.sf-used-timeline:before{content:"";position:absolute;left:7%;right:7%;top:28px;height:1px;background:#b8c8bf;z-index:0}
.sf-used-timeline article{position:relative;z-index:1}
.sf-special--apartment{background:#f0f2f1!important}
.sf-apartment-rules article{border-radius:0;border-left:4px solid #749184}
.sf-special--store{background:#efece5!important}
.sf-store-flow article{border-radius:4px 42px 4px 42px}
.sf-special--custom{background:#edf1ec!important}
.sf-custom-day article{border:0;border-top:1px solid #aebfb5;border-radius:0;background:transparent;padding-left:0;padding-right:24px}
.sf-custom-wide{width:min(100%,980px);margin-left:auto;margin-right:auto}

@media(max-width:820px){
 .sf-roof-signs,.sf-landscape-grid,.sf-barrier-flow,.sf-repair-grid,.sf-used-timeline,.sf-apartment-rules,.sf-store-flow,.sf-custom-day,.sf-roof-visuals,.sf-barrier-images,.sf-used-images,.sf-store-images{grid-template-columns:1fr}
 .sf-landscape-grid article:nth-child(2){transform:none}
 .sf-used-timeline:before{display:none}
 .sf-landscape-wide,.sf-repair-wide,.sf-apartment-wide,.sf-custom-wide{aspect-ratio:4/3}
 .sf-roof-signs article,.sf-landscape-grid article,.sf-barrier-flow article,.sf-repair-grid article,.sf-used-timeline article,.sf-apartment-rules article,.sf-store-flow article,.sf-custom-day article{min-height:0}
}

.sf-home-visuals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:34px}
.sf-home-visuals article,.sf-wallpaper-problem{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr);gap:22px;align-items:center;background:#fff;border:1px solid #e7ddcf;border-radius:28px;padding:18px}
.sf-home-visuals figure,.sf-interior-overview,.sf-wallpaper-problem figure{margin:0;overflow:hidden;border-radius:22px;background:#eef2ef}
.sf-home-visuals figure{aspect-ratio:16/10}
.sf-home-visuals img,.sf-interior-overview img,.sf-wallpaper-problem img{width:100%;height:100%;display:block;object-fit:cover}
.sf-home-visuals article div small{display:inline-block;font-size:10px;letter-spacing:.16em;color:#8d7a63;margin-bottom:8px}
.sf-home-visuals article h3,.sf-wallpaper-problem h3{font-family:var(--cl-serif,Georgia,serif);font-size:28px;font-weight:500;margin:0 0 10px}
.sf-home-visuals article p,.sf-wallpaper-problem p{color:#66706a;line-height:1.9;font-size:14px;margin:0}
.sf-interior-overview{margin:0 0 28px;aspect-ratio:16/8}
.sf-heading--compact{margin-top:10px}
.sf-special--wallpaper-problem{background:#faf5ef!important}
@media (max-width:960px){.sf-home-visuals{grid-template-columns:1fr}.sf-home-visuals article,.sf-wallpaper-problem{grid-template-columns:1fr}.sf-home-visuals figure,.sf-interior-overview,.sf-wallpaper-problem figure{aspect-ratio:4/3}}


.sf-dual-visuals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.sf-dual-visuals--after-grid{margin-top:30px}
.sf-dual-visuals article,.sf-single-visual{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(260px,.92fr);gap:22px;align-items:center;background:#fff;border:1px solid #e7ddcf;border-radius:28px;padding:18px}
.sf-dual-visuals figure,.sf-single-visual figure{margin:0;overflow:hidden;border-radius:22px;background:#eef2ef;aspect-ratio:16/10}
.sf-dual-visuals img,.sf-single-visual img{width:100%;height:100%;display:block;object-fit:cover}
.sf-dual-visuals article div small,.sf-single-visual div small{display:inline-block;font-size:10px;letter-spacing:.16em;color:#8d7a63;margin-bottom:8px}
.sf-dual-visuals article h3,.sf-single-visual h3{font-family:var(--cl-serif,Georgia,serif);font-size:28px;font-weight:500;margin:0 0 10px}
.sf-dual-visuals article p,.sf-single-visual p{color:#66706a;line-height:1.9;font-size:14px;margin:0}
.sf-special--wallpaper-gallery,.sf-special--floor-problem{background:#faf5ef!important}
.sf-single-visual{margin-top:32px}
@media (max-width:960px){.sf-dual-visuals{grid-template-columns:1fr}.sf-dual-visuals article,.sf-single-visual{grid-template-columns:1fr}.sf-dual-visuals figure,.sf-single-visual figure{aspect-ratio:4/3}}
