/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
@import url(https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&display=swap);*{box-sizing:border-box}img,svg{max-width:100%;height:auto}html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}details,img,main,svg{display:block}h1{font-size:2em}hr{box-sizing:content-box;height:0;overflow:visible}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;outline:0;text-decoration:none;color:var(--color-main);-webkit-transition:var(--transition);transition:var(--transition)}abbr[title]{border-bottom:none;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{color:inherit;display:table;max-width:100%;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio],legend{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}[hidden],template{display:none}@font-face{font-family:"DDC Hardware";src:url(../fonts/DDCHardwareCompressed.woff2) format("woff2"),url(../fonts/DDCHardwareCompressed.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:"DDC Hardware Regular";src:url(../fonts/DDCHardware-Regular.woff2) format("woff2"),url(../fonts/DDCHardware-Regular.ttf) format("truetype");font-weight:400;font-display:swap}:root{--font-family: "DM Sans", sans-serif;--font-accent: "DDC Hardware", sans-serif;--font-accent-2: "DDC Hardware Regular", sans-serif;--color-main: #3a3642;--color-accent: #411499;--color-gray: #efe8df;--color-pink: #f9abac;--transition: .3s ease-out}.title,h1,h2,h3,h4,h5{margin:0;padding:0;font-weight:700;line-height:1.25}.title{font-size:72px;color:var(--color-accent);display:-webkit-box;display:flex;text-transform:uppercase;font-family:var(--font-accent);-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;margin:0 0 36px}.title:after{content:"";width:39px;height:40px;background:url(../img/content/star.png) no-repeat;display:block}@media (max-width:750px){.title{font-size:64px;margin:0 0 24px}.title:after{width:28px;height:30px;background-size:contain}}.button,.title_middle{-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center}.title_noicon:after{display:none}.button{display:-webkit-inline-box;display:inline-flex;background:var(--color-pink);outline:0;cursor:pointer;-webkit-transition:var(--transition);transition:var(--transition);border:0;color:var(--color-main);-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:var(--font-accent-2);border-radius:24px;height:70px;padding:0 50px;font-size:24px;position:relative;box-shadow:4px 4px 0 #fff}@media (max-width:1024px){.button{border-radius:15px;height:50px;padding:0 35px;font-size:20px}}@media (min-width:600px){.button:hover{background:#f9989a;box-shadow:0 0 0 #fff}}.input-text{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;box-sizing:border-box;height:70px;background:#f8f5f1;border-radius:35px;padding:0 40px;border:2px solid #efe8df;outline:0;font-family:var(--font-family);font-size:24px;color:var(--color-main);-webkit-transition:var(--transition);transition:var(--transition)}@media (max-width:1024px){.input-text{height:50px;padding:0 30px;font-size:20px}}.input-text::-webkit-input-placeholder{color:#7e7b84}.input-text::-moz-placeholder{color:#7e7b84}.input-text:-ms-input-placeholder,.input-text::-ms-input-placeholder{color:#7e7b84}.input-text::placeholder{color:#7e7b84}.input-text:focus{border-color:var(--color-accent)}textarea.input-text{padding:40px;resize:none;height:100%}@media (max-width:1024px){textarea.input-text{padding:30px}}body,html{height:100%;scroll-behavior:smooth;scroll-padding-top:160px}body{background:#fff;color:var(--color-main);font-size:16px;font-family:var(--font-family);line-height:1.3;-webkit-font-smoothing:antialiased;font-display:swap;font-variant-numeric:lining-nums}.wrapper{width:100%;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;min-height:100vh}.container{max-width:1260px;margin:0 auto;padding:0 40px;width:100%}@media (max-width:500px){.container{padding:0 20px}}
/*! About Section
---------------------
 */
.about-section{padding:110px 0 0}@media (max-width:1024px){.about-section{padding:80px 0 0}}@media (max-width:500px){.about-section{padding:40px 0 0}.about-section .title{-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center}}.about-section__grid{display:-webkit-box;display:flex;gap:36px}@media (max-width:1024px){.about-section__grid{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;gap:40px}.about-section__grid .about-section__photo{-webkit-box-ordinal-group:0;order:-1}}.about-section__photo{width:578px;-webkit-box-flex:0;flex:none;background:#e3e3e3;border-radius:34px;border:2px solid #000;position:relative;overflow:hidden;max-height:650px}.about-section__photo img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:bottom;object-position:bottom}@media (max-width:1024px){.about-section__photo{width:100%}}.about-section__about{-webkit-box-flex:1;flex:auto;display:-webkit-box;display:flex;-webkit-box-pack:justify;justify-content:space-between;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;gap:24px}.about-section__about .title,.about-section__text p{margin:0}.about-section__text{font-size:21px}@media (max-width:1024px){.about-section__text{font-size:18px}}@media (max-width:750px){.about-section__text{font-size:16px}}.about-section__text p:not(:last-child){margin:0 0 16px}
/*! Why Section
---------------------
 */
.why-section{padding:70px 0}.why-section__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:50px;grid-row-gap:70px}@media (max-width:1024px){.why-section__grid{gap:40px;grid-row-gap:60px}}@media (max-width:750px){.why-section__grid{grid-template-columns:repeat(1,1fr);gap:50px}}.why-section__item{position:relative;padding-left:95px;font-size:21px}@media (max-width:1024px){.why-section__item{font-size:17px;padding-left:70px}}.why-section__item img{position:absolute;left:0;top:0}@media (max-width:1024px){.why-section__item img{width:48px;height:auto}}.why-section__title{font-size:30px;font-family:var(--font-accent-2);margin:0 0 12px;max-width:300px}@media (max-width:1024px){.why-section__title{font-size:20px}}@media (max-width:750px){.why-section__title{margin:0 0 6px}}
/*! Services Section
---------------------
 */
.services-section{padding:80px 0 120px;position:relative;background:#bbb4b1;overflow:hidden}@media (max-width:750px){.services-section{padding:60px 0 80px}}.services-section:before{width:415px;height:190px;content:"";top:40px;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);position:absolute;z-index:2;background:url(../img/content/shadow.png) no-repeat}@media (max-width:750px){.services-section:before{top:20px}}.services-section .title{text-shadow:0 0 4px #fff}.services-section__bg{position:absolute;left:0;top:0;width:100%;z-index:1;height:100%}.services-section__bg img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.services-section__block{position:relative;z-index:3}.services-section__grid{display:-webkit-box;display:flex;flex-wrap:wrap;-webkit-box-pack:justify;justify-content:space-between;gap:0;grid-row-gap:60px;max-width:1120px;margin:0 auto}@media (max-width:1024px){.services-section__grid{gap:0;grid-row-gap:40px;max-width:280px;margin:0 auto}}.services-section__item{color:#fff;font-size:30px;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;text-shadow:0 0 3px var(--color-main);font-family:var(--font-accent-2);text-transform:uppercase;width:calc(50% - 12px);gap:6px}@media (max-width:1024px){.services-section__item{font-size:24px}}@media (max-width:750px){.services-section__item{width:100%;text-align:center;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;max-width:400px;margin:0 auto;-webkit-box-pack:center;justify-content:center}}.services-section__item:last-child{width:100%}.services-section__inner{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;max-width:400px;margin:0 auto;-webkit-box-pack:center;justify-content:center;text-align:center}
/*! How Section
---------------------
 */
.how-section{padding:130px 0;background:var(--color-gray);overflow:hidden}@media (max-width:750px){.how-section{padding:80px 0;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}.how-section .container{display:contents}}.how-section__top{display:-webkit-box;display:flex;gap:70px;margin:0 0 50px}@media (max-width:750px){.how-section__top{display:contents;margin:0;text-align:center}}@media (max-width:500px){.how-section__top .button{width:100%}}.how-section__content{-webkit-box-flex:0;flex:none}@media (max-width:750px){.how-section__content{display:contents}}.how-section__content .title{margin:0 0 80px;text-shadow:3px 3px 0 #fff}@media (max-width:750px){.how-section__content .title{margin:0 0 32px;-webkit-box-ordinal-group:1;order:0}}@media (max-width:500px){.how-section__content .title{-webkit-box-pack:center;justify-content:center;-webkit-box-align:center;align-items:center}}@media (max-width:750px){.how-section__button{margin:48px 0 0;padding:0 20px;-webkit-box-ordinal-group:5;order:4}}.how-section__photos{position:relative;-webkit-box-flex:1;flex:auto}@media (max-width:750px){.how-section__photos{margin:0 0 12px}}.how-section__gallery{display:-webkit-box;display:flex;gap:30px}@media (max-width:1024px){.how-section__gallery{gap:20px}}@media (max-width:750px){.how-section__gallery{gap:12px;-webkit-box-pack:center;justify-content:center}}.how-section__gallery img{border:3px solid #fff;width:280px;min-width:280px;height:280px;border-radius:24px;-o-object-fit:cover;object-fit:cover}@media (max-width:1024px){.how-section__gallery img{width:180px;min-width:180px;height:180px;border-radius:16px}}@media (max-width:750px){.how-section__gallery img{border:2px solid #fff;width:120px;min-width:120px;height:120px;border-radius:10px}}.how-section__gallery a:hover{opacity:.7}.how-section__top .how-section__gallery{position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);left:0}@media (max-width:750px){.how-section__top .how-section__gallery{position:initial;-webkit-transform:none;transform:none}}.how-section__bottom{position:relative}.how-section__bottom .how-section__gallery{-webkit-box-pack:center;justify-content:center}
/*! Reviews Section
---------------------
 */
.reviews-section{background:#411499 url(../img/content/reviews-ill.png) no-repeat 0 50%;padding:110px 0 230px;color:#fff;position:relative}@media (max-width:1024px){.reviews-section{padding-bottom:160px}}@media (max-width:750px){.reviews-section{padding:60px 0 120px}}.reviews-section__bottom{bottom:0;left:0;width:100%;position:absolute}.reviews-section__bottom img{width:100%}.reviews-section__slider{position:relative;padding:0 0 20px}@media (max-width:500px){.reviews-section__slider .swiper{padding:0 20px;margin:0 -20px}}.reviews-section__arrows{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;right:0;bottom:0;position:absolute;gap:34px;z-index:3}@media (max-width:1024px){.reviews-section__arrows{display:none}}.reviews-section__arrow{-webkit-transition:var(--transition);transition:var(--transition);cursor:pointer}.reviews-section__arrow:hover{opacity:.7}.reviews-section .swiper-pagination{position:initial;display:-webkit-box;display:flex;margin:0 0 60px 130px!important}@media (max-width:750px){.reviews-section .swiper-pagination{margin:0 0 48px!important}}.reviews-section .swiper-pagination-bullet{width:13px;height:13px;border-radius:35px;opacity:1;margin:0;padding:0;background:#fff;-webkit-transition:var(--transition);transition:var(--transition)}@media (max-width:750px){.reviews-section .swiper-pagination-bullet{width:10px;height:10px}}.reviews-section .swiper-pagination-bullet-active{background:var(--color-pink);width:116px}@media (max-width:750px){.reviews-section .swiper-pagination-bullet-active{width:80px}}.reviews-section__item{position:relative;padding-left:130px}@media (max-width:750px){.reviews-section__item{padding:0}}.reviews-section__quote{position:absolute;left:0;top:94px}@media (max-width:750px){.reviews-section__quote{display:none}}.reviews-section__name{font-size:48px;color:var(--color-pink);margin:0 0 24px;font-family:var(--font-accent-2)}@media (max-width:750px){.reviews-section__name{font-size:32px;margin:0 0 16px}}.reviews-section__text{font-size:24px;color:#fff;max-width:910px}@media (max-width:1024px){.reviews-section__text{font-size:20px}}@media (max-width:750px){.reviews-section__text{font-size:16px}}.reviews-section__rating{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;margin:70px 0 0;gap:8px}@media (max-width:1024px){.reviews-section__rating{margin:50px 0 0}.reviews-section__rating img{height:50px}}@media (max-width:750px){.reviews-section__rating{margin:32px 0 0}.reviews-section__rating img{height:32px}}
/*! Get Section
---------------------
 */
.get-section{padding:0 0 60px}.get-section__logo{margin:-180px auto 30px;display:table;position:relative}@media (max-width:1024px){.get-section__logo{margin:-90px auto 30px}.get-section__logo img{width:190px}}.get-section__form{gap:24px;display:-webkit-box;display:flex}@media (max-width:1024px){.get-section__form{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}}.get-section__left{width:370px;-webkit-box-flex:0;flex:none;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;gap:16px}@media (max-width:1024px){.get-section__left{width:100%;display:grid;grid-template-columns:repeat(2,1fr)}}@media (max-width:750px){.get-section__left{grid-template-columns:repeat(1,1fr)}}.get-section__right{-webkit-box-flex:1;flex:auto}.get-section__right .input-text{height:328px}@media (min-width:1025px){.get-section__right .input-text{height:414px}}@media (max-width:1024px){.get-section__right .input-text{height:240px}}.get-section__button{margin:40px 0 0}@media (max-width:1024px){.get-section__button{margin:24px 0 0}}.get-section__button .button{min-width:370px}@media (max-width:1024px){.get-section__button .button{width:100%;min-width:initial}}.get-section__done{max-width:500px;margin:0 auto;display:none}.get-section__done-inner{text-align:center;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-align:center;align-items:center;-webkit-box-pack:center;justify-content:center;min-height:443px}.get-section__done-text{margin:0 0 32px;font-size:28px}
/*! Header
-------------
 */
.header-img{position:relative}.header-img__pic img{width:100%}@media (max-width:750px){.header-img__pic img{min-height:400px;-o-object-fit:cover;object-fit:cover}}.header-img__logo{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);will-change:transform;border-radius:100%;background:var(--color-gray);width:180px;height:180px;display:none;-webkit-box-pack:center;justify-content:center;-webkit-transition:top var(--transition);transition:top var(--transition);-webkit-box-align:center;align-items:center;overflow:hidden}@media (max-width:500px){.header-img__logo{display:-webkit-box;display:flex}}.header-img__logo img{height:150px}.header{position:-webkit-sticky;position:sticky;top:0;width:100%;z-index:99;background:var(--color-gray)}.header__grid{height:124px;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;position:relative;-webkit-box-pack:justify;justify-content:space-between}@media (max-width:1024px){.header__grid{height:80px}}@media (max-width:500px){.header__grid{height:60px}.header__grid .button{height:36px;padding:0 14px;font-size:15px;border-radius:10px}}.header__phone{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;gap:14px;font-size:24px;color:var(--color-main);font-family:var(--font-accent-2)}@media (max-width:1024px){.header__phone{font-size:18px}.header__phone img{height:32px;width:auto}}@media (max-width:500px){.header__phone{font-size:16px;gap:10px}.header__phone img{height:28px}}.header__logo{position:absolute;top:-40px;left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);will-change:transform;border-radius:100%;background:var(--color-gray);width:210px;display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;-webkit-transition:top var(--transition);transition:top var(--transition)}.header__logo img{width:195px;-webkit-transition:var(--transition);transition:var(--transition)}@media (max-width:1024px){.header__logo{width:120px;top:-10px}.header__logo img{width:105px}}@media (max-width:500px){.header__logo{display:none}}.header_sticky .header__logo{top:0;background-color:transparent}.header_sticky .header__logo img{width:130px}
/*! Footer
----------------------------
 */
.footer{margin:auto 0 0}.footer__main{background:var(--color-gray);padding:50px 0}.footer__grid{display:-webkit-box;display:flex;-webkit-box-pack:justify;justify-content:space-between}@media (max-width:1024px){.footer__grid{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;gap:48px}}.footer__time{display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;gap:14px}.footer__time-info{font-size:21px}.footer__time-info strong{display:block;font-weight:400;font-family:var(--font-accent-2);font-size:24px;margin:0 0 6px}@media (max-width:750px){.footer__time img{height:50px;width:auto}.footer__time-info{font-size:18px}.footer__time-info strong{font-size:20px}}.footer__stars{margin:40px 0 0}@media (max-width:1024px){.footer__stars{display:none}}.footer__nav{display:grid;grid-template-columns:repeat(2,1fr);gap:70px}@media (max-width:750px){.footer__nav{gap:30px}}.footer__menu{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;gap:20px}@media (max-width:750px){.footer__menu{gap:12px}}.footer__menu-links{font-family:var(--font-accent-2);font-size:24px;text-transform:uppercase;color:var(--color-main)}@media (max-width:750px){.footer__menu-links{font-size:17px}}.footer a.footer__menu-links:hover{color:var(--color-accent)}.footer__pay{margin:50px 0 0;display:-webkit-box;display:flex;-webkit-box-align:center;align-items:center;gap:50px}@media (max-width:750px){.footer__pay{margin:32px 0 0;gap:20px;flex-wrap:wrap}.footer__pay img{max-height:34px;width:auto;max-width:80px}}.footer__copy{background:#411499;font-size:21px;color:#fff;padding:20px 0}@media (max-width:1024px){.footer__copy{font-size:16px}}@media (max-width:750px){.footer__copy{padding:14px 0}}
/* seo-2026-10 */.header-img__pic img{height:auto}.hero{text-align:center;padding:100px 0 8px}.hero .title{font-size:56px;margin:0 0 16px}.hero__sub{font-size:20px;line-height:1.4;max-width:680px;margin:0 auto 24px}.about-section__lead{font-size:21px;font-weight:700}@media (max-width:767px){.hero{padding:32px 0 0}.hero .title{font-size:36px}.hero__sub{font-size:17px}}
/* Design preview v2, 2026-10-05. Loaded after mains67ej.min.css. Not live.
   Section colour rhythm: white hero > purple band > cream About > pink Why Us >
   dark Services > cream gallery > purple reviews > white quote > cream footer. */

:root {
  --pink-tint: #fdeceb;
  --cream: var(--color-gray);
  --ease-out: cubic-bezier(.16, 1, .3, 1);
}

/* ---------- Base polish ---------- */
.title, h1, h2, h3 { text-wrap: balance; }
p { text-wrap: pretty; }
#get-section, #main { scroll-margin-top: 120px; }

.skip-link {
  position: absolute; left: 16px; top: -100px; z-index: 1000;
  background: var(--color-accent); color: #fff; padding: 12px 20px; border-radius: 10px;
  font-family: var(--font-family); font-weight: 700; text-decoration: none;
}
.skip-link:focus { top: 16px; }

a:focus-visible, button:focus-visible, .button:focus-visible,
.input-text:focus-visible, [role="button"]:focus-visible {
  outline: 3px solid var(--color-accent);
  outline-offset: 3px;
}
.button:active { transform: translateY(1px); }

/* ---------- Top banner: shorter so the hero is on the first screen ---------- */
.header-img__pic img { min-height: 0; height: 320px; object-fit: cover; object-position: center 40%; }
@media (max-width: 500px) {
  .header-img__pic img { height: 230px; }
  .header-img__logo { width: 130px; height: 130px; }
  .header-img__logo img { height: 108px; }
}

/* ---------- Hero (approved, unchanged) ---------- */
.hero { text-align: left; padding: 110px 0 40px; }
.hero__grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 56px; align-items: center; }
.hero .title { font-size: 64px; line-height: .95; margin: 0 0 20px; align-items: flex-start; }
.hero__sub { margin: 0 0 28px; max-width: 520px; font-size: 20px; }
.hero__trust { display: flex; flex-wrap: wrap; gap: 8px 20px; margin: 24px 0 0; padding: 0; list-style: none; font-size: 16px; color: var(--color-main); }
.hero__trust li::before { content: "✓ "; color: var(--color-accent); font-weight: 700; }
.hero__actions { display: flex; flex-wrap: wrap; gap: 16px; align-items: center; }
.hero__call { font-family: var(--font-family); font-weight: 700; font-size: 18px; color: var(--color-accent); text-decoration: none; }
.hero__call:hover { text-decoration: underline; }
.hero__photo { border-radius: 34px; border: 2px solid #000; overflow: hidden; aspect-ratio: 4 / 5; background: #e3e3e3; }
.hero__photo img { width: 100%; height: 100%; object-fit: cover; object-position: center 35%; display: block; }
@media (min-width: 1025px) { .hero__photo { aspect-ratio: 1 / 1; } }
@media (max-width: 1024px) {
  .hero__grid { grid-template-columns: 1fr; gap: 32px; }
  .hero { padding: 90px 0 24px; text-align: center; }
  .hero .title { align-items: center; font-size: 48px; }
  .hero__sub { margin-left: auto; margin-right: auto; }
  .hero__actions, .hero__trust { justify-content: center; }
  .hero__photo { max-width: 520px; margin: 0 auto; aspect-ratio: 4 / 3; }
}
@media (max-width: 767px) {
  .hero { padding: 28px 0 8px; }
  .hero .title { font-size: 38px; }
  .hero__sub { font-size: 17px; }
  .hero__actions .button { width: 100%; }
  .hero__trust { font-size: 15px; }
}

/* ---------- Facts band: tilted ribbon bridging white hero and cream About ---------- */
.facts {
  position: relative; overflow: hidden; padding: 48px 0 56px;
  background: linear-gradient(180deg, #fff 50%, var(--cream) 50%);
}
.facts__band {
  list-style: none; margin: 0 -4%; padding: 26px 4%;
  display: flex; justify-content: center; flex-wrap: wrap; gap: 14px 44px;
  background: var(--color-accent); transform: rotate(-2deg);
  box-shadow: 0 18px 40px -18px rgba(65, 20, 153, .55);
}
.facts__band li {
  display: flex; align-items: center; gap: 14px;
  font-family: var(--font-accent); text-transform: uppercase; color: #fff;
  font-size: 30px; line-height: 1; letter-spacing: .01em; white-space: nowrap;
}
.facts__band li::before {
  content: ""; width: 22px; height: 22px; flex: none;
  background: url(../img/content/star.png) center / contain no-repeat;
}
@media (max-width: 1024px) { .facts__band li { font-size: 24px; } .facts__band { gap: 12px 32px; } }
@media (max-width: 767px) {
  .facts { padding: 32px 0 40px; }
  .facts__band { flex-direction: column; align-items: center; gap: 12px; padding: 24px 6%; transform: rotate(-3deg); }
  .facts__band li { font-size: 22px; }
}

/* ---------- About: cream section ---------- */
.about-section { background: var(--cream); padding: 40px 0 110px; }
.about-section__photo { box-shadow: 10px 10px 0 var(--color-pink); }
.about-section__lead { font-size: 22px; font-weight: 700; color: var(--color-accent); }
@media (max-width: 767px) { .about-section { padding: 24px 0 70px; } .about-section__photo { box-shadow: 6px 6px 0 var(--color-pink); } }

/* ---------- Why Us: pink tint, cards that lift ---------- */
.why-section { background: var(--pink-tint); padding: 110px 0; }
.why-section__grid { gap: 28px; grid-row-gap: 28px; }
.why-section__item {
  background: #fff; border-radius: 24px; padding: 34px 34px 34px 126px;
  border: 2px solid var(--color-main); box-shadow: 6px 6px 0 var(--color-accent);
  transition: transform .35s var(--ease-out), box-shadow .35s var(--ease-out);
}
.why-section__item img { left: 32px; top: 34px; }
.why-section__item:hover { transform: translate(-3px, -3px); box-shadow: 9px 9px 0 var(--color-accent); }
.why-section__title { color: var(--color-accent); max-width: none; }
@media (max-width: 1024px) { .why-section__item { padding: 28px 24px 28px 96px; } .why-section__item img { left: 22px; top: 28px; } }
@media (max-width: 767px) { .why-section { padding: 70px 0; } }

/* ---------- Services (approved, unchanged) ---------- */
.services-section:before { display: none; }
.services-section__bg::after {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(34, 12, 82, .82), rgba(34, 12, 82, .9));
}
.services-section .title { color: #fff; text-shadow: none; }
.services-section__grid {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 20px; max-width: 1120px;
}
.services-section__item, .services-section__item:last-child {
  width: auto; max-width: none; margin: 0; display: block; text-align: left;
  background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 20px; padding: 24px 24px 26px;
  text-shadow: none; text-transform: none; font-family: var(--font-family); font-size: 17px; line-height: 1.5;
}
.services-section__item img { width: 22px; height: 22px; display: block; margin: 0 0 14px; }
.services-section__item h3 {
  font-family: var(--font-accent-2); font-size: 22px; text-transform: uppercase;
  letter-spacing: .02em; margin: 0 0 8px; color: #fff;
}
.services-section__item p { margin: 0; color: rgba(255, 255, 255, .88); }
.services-section__item--featured { border-color: var(--color-pink); background: rgba(249, 171, 172, .14); }
@media (min-width: 1025px) {
  .services-section__grid { grid-template-columns: repeat(3, 1fr); }
  .services-section__item--featured { grid-column: span 2; }
}
@media (max-width: 1024px) { .services-section__grid { max-width: 640px; grid-template-columns: 1fr; } }

/* ---------- How We Work: original layout, rows drift in opposite directions ---------- */
.how-section__gallery { justify-content: flex-start; }
.how-track { display: flex; width: max-content; animation: how-drift var(--dur, 70s) linear infinite; }
.how-track--rev { animation-direction: reverse; }
.how-track > a { flex: none; margin-right: 30px; }
.how-section__gallery:hover .how-track,
.how-section__gallery:focus-within .how-track { animation-play-state: paused; }
.how-track img { transition: transform .4s var(--ease-out); }
.how-track a:hover img { transform: scale(1.04) rotate(-1deg); }
@keyframes how-drift { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (max-width: 1024px) { .how-track > a { margin-right: 20px; } }
@media (max-width: 750px) { .how-track > a { margin-right: 12px; } }

/* ---------- Quote: pink "how it works" panel + labelled form card ---------- */
.get-section .title:after { display: none; }
.quote {
  display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  gap: 28px; align-items: stretch; max-width: 1120px; margin: 0 auto;
}
.quote__panel {
  background: var(--color-pink); border: 2px solid var(--color-main); border-radius: 34px;
  padding: 44px 40px; display: flex; flex-direction: column; gap: 28px;
}
.quote__panel-title {
  font-family: var(--font-accent); text-transform: uppercase; color: var(--color-accent);
  font-size: 44px; line-height: 1; margin: 0;
}
.quote__steps { list-style: none; margin: 0; padding: 0; counter-reset: step; display: grid; gap: 22px; }
.quote__steps li { counter-increment: step; display: grid; grid-template-columns: 52px 1fr; column-gap: 16px; align-items: start; }
.quote__steps li::before {
  content: counter(step); grid-row: span 2;
  width: 52px; height: 52px; border-radius: 50%; background: var(--color-accent); color: #fff;
  display: grid; place-items: center; font-family: var(--font-accent); font-size: 28px;
}
.quote__steps strong { font-family: var(--font-accent-2); text-transform: uppercase; font-size: 21px; font-weight: 400; color: var(--color-main); padding-top: 4px; }
.quote__steps span { font-size: 17px; line-height: 1.45; color: var(--color-main); }
.quote__contact {
  margin-top: auto; padding-top: 24px; border-top: 2px dashed rgba(58, 54, 66, .35);
  display: flex; flex-wrap: wrap; align-items: center; gap: 10px 18px; font-size: 17px;
}
.quote__contact a {
  font-family: var(--font-accent-2); text-transform: uppercase; font-size: 20px;
  color: var(--color-accent); text-decoration: underline; text-underline-offset: 4px;
}

.quote__card {
  background: #fff; border: 2px solid var(--color-main); border-radius: 34px;
  padding: 40px; box-shadow: 10px 10px 0 var(--color-accent);
}
.quote__form { flex-direction: row; flex-wrap: wrap; gap: 20px 16px; align-items: flex-start; }
.qf { flex: 1 1 220px; display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.qf--full { flex-basis: 100%; }
.qf--wide { flex: 2 1 300px; }
.qf--narrow { flex: 1 1 150px; }
.qf label {
  font-family: var(--font-accent-2); text-transform: uppercase; font-size: 17px;
  letter-spacing: .03em; color: var(--color-main);
}
.qf__optional { font-family: var(--font-family); text-transform: none; font-size: 14px; color: #6b6573; letter-spacing: 0; margin-left: 6px; }
.quote .input-text {
  height: 58px; border-radius: 16px; padding: 0 18px; font-size: 18px;
  background: #faf7f3; border: 2px solid #d9d0c5; color: var(--color-main);
  transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.quote textarea.input-text { height: auto; min-height: 120px; padding: 14px 18px; resize: vertical; line-height: 1.45; }
.quote .input-text::placeholder { color: #8a8390; }
.quote .input-text:hover { border-color: #b9aea2; }
.quote .input-text:focus { border-color: var(--color-accent); background: #fff; box-shadow: 0 0 0 4px rgba(65, 20, 153, .14); outline: none; }
.quote .input-text:user-invalid { border-color: #c2334d; }
.qf--submit { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 12px 20px; margin-top: 4px; }
.qf--submit .button { width: auto; min-width: 0; }
.quote__note { margin: 0; font-size: 15px; color: #6b6573; }
.quote .get-section__done { max-width: none; padding: 40px 0; }
.quote .get-section__done-text { font-size: 24px; }

@media (max-width: 1024px) {
  .quote { grid-template-columns: 1fr; max-width: 640px; }
  .quote__panel-title { font-size: 36px; }
}
@media (max-width: 767px) {
  .quote__panel { padding: 30px 24px; border-radius: 24px; }
  .quote__card { padding: 26px 20px; border-radius: 24px; box-shadow: 6px 6px 0 var(--color-accent); }
  .qf--submit .button { width: 100%; }
}

/* ---------- Footer ---------- */
.footer__privacy { color: inherit; }

/* ---------- Scroll reveal (only when JS is running) ---------- */
.js-motion .reveal { opacity: 0; transform: translateY(28px); transition: opacity .7s var(--ease-out), transform .7s var(--ease-out); }
.js-motion .reveal.is-visible { opacity: 1; transform: none; }
.js-motion .why-section__item.reveal.is-visible:hover { transform: translate(-3px, -3px); }

/* ---------- Reduced motion: everything still, gallery scrollable by hand ---------- */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; animation: none !important; }
  .js-motion .reveal { opacity: 1; transform: none; }
  .how-section__gallery { overflow-x: auto; }
}

/* ---------- Fixes after v2 check ---------- */
.how-section .how-section__gallery,
.how-section__bottom .how-section__gallery { justify-content: flex-start; }
/* clip the top row on its left edge only, so it still bleeds off the right like the original */
.how-section__photos { clip-path: inset(-40px -100vw -40px 0); }
.quote__contact span { flex-basis: 100%; }
@media (max-width: 767px) {
  .facts__band { display: grid; justify-content: center; justify-items: start; }
}

/* ---------- About: photo always ends level with the text beside it ---------- */
@media (min-width: 1025px) {
  .about-section__grid { align-items: stretch; }
  .about-section__photo { max-height: none; min-height: 600px; }
  .about-section__photo img { position: absolute; inset: 0; }
}
@media (min-width: 1025px) and (max-width: 1279px) {
  .about-section__photo { width: 47%; }
  .about-section__text { font-size: 20px; }
}
