:root{
  --suyu-primary:#59644A;--suyu-primary-2:#44503A;--suyu-sage:#A8B19A;
  --suyu-accent:#C66B4E;--suyu-accent-soft:#DCA38D;--suyu-bg:#F7F4EE;
  --suyu-surface:#FFFDF9;--suyu-sand:#E9E1D5;--suyu-text:#24231F;
  --suyu-muted:#69645C;--suyu-border:#D8D0C5;--suyu-radius:18px;
  --suyu-shadow:0 22px 60px rgba(36,35,31,.08);--suyu-max:1180px;
}
.suyu-home,.suyu-service-detail{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--suyu-text);background:var(--suyu-bg)}html:has(.suyu-home),body:has(.suyu-home){overflow-x:clip}.suyu-home{width:100vw!important;max-width:none!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important}
.suyu-home *,.suyu-service-detail *{box-sizing:border-box}.suyu-home img{max-width:100%}.suyu-home a{transition:.2s ease}
.suyu-home .suyu-home-section{width:100%!important;min-width:0!important}.suyu-home .suyu-hero,.suyu-home .suyu-cta{display:grid!important}.suyu-home .suyu-section-head{display:block!important;width:100%!important;min-width:0!important}.suyu-home .suyu-section-head h2,.suyu-home .suyu-section-head p,.suyu-home .suyu-mini-card h3,.suyu-home .suyu-mini-card p,.suyu-home .suyu-selector__item h3,.suyu-home .suyu-selector__item p{width:auto!important;max-width:none!important;min-width:0!important;word-break:normal!important;overflow-wrap:normal!important}.suyu-home .suyu-grid{display:grid!important;width:100%!important;min-width:0!important}.suyu-home .suyu-grid>*{min-width:0!important}
.suyu-home h1,.suyu-home h2,.suyu-home h3,.suyu-service-detail h1,.suyu-service-detail h2{font-family:Manrope,Inter,ui-sans-serif,system-ui,sans-serif;letter-spacing:-.035em;color:var(--suyu-text)}
.suyu-public-header{position:relative;z-index:20;width:100%;background:rgba(255,253,249,.96);border-bottom:1px solid var(--suyu-border)}.suyu-public-header__inner{display:flex!important;align-items:center;justify-content:space-between;gap:28px;width:100%;max-width:var(--suyu-max);min-height:78px;margin:0 auto;padding:12px 28px}.suyu-public-brand{display:inline-flex;flex-direction:column;flex:0 0 auto;text-decoration:none;color:var(--suyu-text);line-height:1}.suyu-public-brand__name{font-family:Manrope,Inter,ui-sans-serif,system-ui,sans-serif;font-size:1.2rem;font-weight:900;letter-spacing:.13em}.suyu-public-brand__descriptor{margin-top:6px;font-size:.68rem;font-weight:700;letter-spacing:.04em;color:var(--suyu-muted)}.suyu-public-nav{display:flex!important;align-items:center;justify-content:flex-end;gap:clamp(18px,2.4vw,34px);min-width:0}.suyu-public-nav__links{display:flex!important;align-items:center;gap:clamp(14px,2vw,28px)}.suyu-public-nav__links a{color:var(--suyu-text);font-size:.9rem;font-weight:750;text-decoration:none;white-space:nowrap}.suyu-public-nav__links a:hover,.suyu-public-nav__links a:focus-visible{color:var(--suyu-primary)}.suyu-public-nav__cta{min-height:42px;padding:10px 16px;font-size:.86rem;white-space:nowrap}.suyu-public-nav-toggle{display:none;align-items:center;gap:10px;min-height:42px;padding:9px 12px;border:1px solid var(--suyu-border);border-radius:10px;background:var(--suyu-surface);color:var(--suyu-text);font:inherit;font-size:.84rem;font-weight:800;cursor:pointer}.suyu-public-nav-toggle i,.suyu-public-nav-toggle i:before,.suyu-public-nav-toggle i:after{display:block;width:18px;height:2px;border-radius:2px;background:currentColor}.suyu-public-nav-toggle i{position:relative}.suyu-public-nav-toggle i:before,.suyu-public-nav-toggle i:after{content:"";position:absolute;left:0}.suyu-public-nav-toggle i:before{top:-6px}.suyu-public-nav-toggle i:after{top:6px}.suyu-public-header.is-menu-open .suyu-public-nav-toggle i{background:transparent}.suyu-public-header.is-menu-open .suyu-public-nav-toggle i:before{top:0;transform:rotate(45deg)}.suyu-public-header.is-menu-open .suyu-public-nav-toggle i:after{top:0;transform:rotate(-45deg)}
.suyu-home-section{max-width:var(--suyu-max);margin:0 auto;padding:96px 28px;position:relative}
.suyu-section-head{max-width:760px;margin:0 0 40px}.suyu-section-head h2{font-size:clamp(2rem,4.4vw,3.8rem);line-height:1.02;margin:.16em 0 .34em;font-weight:700}.suyu-section-head p{font-size:1.05rem;color:var(--suyu-muted);line-height:1.75;max-width:680px}
.suyu-section-visual{width:min(100%,820px);height:clamp(220px,25vw,340px);margin:0 0 42px;overflow:hidden;border-radius:var(--suyu-radius);background:var(--suyu-sand)}.suyu-section-visual__img,.suyu-section-visual>img{display:block;width:100%;height:100%;object-fit:cover}
.suyu-eyebrow{display:block;font-size:.74rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--suyu-primary);margin-bottom:14px}
.suyu-lead{font-size:clamp(1.02rem,1.4vw,1.2rem);line-height:1.75;color:var(--suyu-muted)}
.suyu-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.suyu-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 20px;border-radius:11px;text-decoration:none;font-weight:800;border:1px solid transparent;line-height:1.1}.suyu-btn--primary{background:var(--suyu-primary);color:#fff;box-shadow:0 8px 24px rgba(89,100,74,.15)}.suyu-btn--primary:hover{background:var(--suyu-primary-2);transform:translateY(-1px)}.suyu-btn--secondary,.suyu-btn--ghost{border-color:var(--suyu-border);color:var(--suyu-text);background:rgba(255,253,249,.72)}.suyu-btn--ghost:hover,.suyu-btn--secondary:hover{border-color:var(--suyu-primary);color:var(--suyu-primary)}
.suyu-link{font-weight:800;color:var(--suyu-primary);text-decoration:none}.suyu-link:hover{color:var(--suyu-accent)}
/* Hero */
.suyu-hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(300px,.92fr);gap:clamp(38px,5vw,72px);align-items:center;min-height:660px;padding-top:74px;padding-bottom:82px}.suyu-hero__content{max-width:610px}.suyu-hero h1{font-size:clamp(3rem,6.7vw,6.35rem);line-height:.92;margin:.1em 0 .28em;font-weight:700;max-width:720px}.suyu-hero__media{position:relative;width:100%;max-width:470px;justify-self:end}.suyu-hero__media:before{content:"";position:absolute;inset:8% -5% -5% 11%;background:var(--suyu-sand);border-radius:32px;transform:rotate(2deg)}.suyu-hero__media picture{position:relative;display:block;height:clamp(340px,31vw,440px);overflow:hidden;border-radius:28px;box-shadow:var(--suyu-shadow)}.suyu-hero__img,.suyu-hero__media picture>img,.suyu-featured__img,.suyu-card__img,.suyu-before-after img{width:100%;display:block;object-fit:cover}.suyu-hero__img,.suyu-hero__media picture>img{height:100%;aspect-ratio:auto;border-radius:inherit}.suyu-hero__micro{display:flex;gap:10px 18px;flex-wrap:wrap;margin-top:34px;padding-top:22px;border-top:1px solid var(--suyu-border)}.suyu-hero__micro span{font-size:.84rem;color:var(--suyu-muted);font-weight:700}.suyu-hero__micro span:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--suyu-accent);margin-right:8px;vertical-align:middle}
/* Section rhythm */
.suyu-section--problems,.suyu-section--selector,.suyu-section--projects,.suyu-section--blog{max-width:var(--suyu-max)!important;width:100%!important;padding-left:28px!important;padding-right:28px!important}.suyu-section--problems,.suyu-section--projects{background:var(--suyu-surface)}.suyu-section--value{padding-top:110px;padding-bottom:110px}
.suyu-grid{display:grid;gap:22px}.suyu-grid--services,.suyu-grid--projects,.suyu-grid--blog{grid-template-columns:repeat(3,minmax(0,1fr))}.suyu-grid--problems,.suyu-grid--value,.suyu-grid--process,.suyu-selector{grid-template-columns:repeat(4,minmax(0,1fr))}
.suyu-mini-card,.suyu-selector__item,.suyu-testimonial{border-top:1px solid var(--suyu-border);padding:24px 0 8px;background:transparent}.suyu-mini-card h3,.suyu-selector__item h3{font-size:1.08rem;margin:0 0 10px;line-height:1.25}.suyu-mini-card p,.suyu-selector__item p{color:var(--suyu-muted);line-height:1.65;margin:0}.suyu-step{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--suyu-sand);font-weight:900;color:var(--suyu-accent);margin-bottom:18px}
.suyu-selector__item{background:var(--suyu-surface);border:1px solid var(--suyu-border);border-radius:var(--suyu-radius);padding:28px;min-height:230px;display:flex;flex-direction:column;box-shadow:0 8px 26px rgba(36,35,31,.035)}.suyu-selector__item .suyu-link{margin-top:auto;padding-top:18px}
/* Cards */
.suyu-card{background:var(--suyu-surface);border:1px solid var(--suyu-border);border-radius:var(--suyu-radius);overflow:hidden;display:flex;flex-direction:column;min-width:0}.suyu-card__media{display:block;overflow:hidden;background:var(--suyu-sand)}.suyu-card__img{aspect-ratio:4/3;transition:transform .35s ease}.suyu-card:hover .suyu-card__img{transform:scale(1.025)}.suyu-card__placeholder{display:block;aspect-ratio:4/3;background:linear-gradient(135deg,var(--suyu-sand),#d7ded0)}.suyu-card__body{padding:24px;display:flex;flex-direction:column;flex:1}.suyu-card h3{font-size:1.3rem;line-height:1.18;margin:0 0 10px}.suyu-card h3 a{text-decoration:none;color:var(--suyu-text)}.suyu-card__claim,.suyu-card__body>p{color:var(--suyu-muted);line-height:1.6}.suyu-card__kicker{min-height:26px}.suyu-card__footer{margin-top:auto;padding-top:20px;border-top:1px solid var(--suyu-border);display:flex;align-items:end;justify-content:space-between;gap:16px}.suyu-card__price{display:flex;flex-direction:column;gap:2px}.suyu-card__price strong{font-size:1.28rem;color:var(--suyu-text)}.suyu-card__price del{font-size:.82rem;color:var(--suyu-muted)}.suyu-price-prefix,.suyu-meta{font-size:.78rem;color:var(--suyu-muted);font-weight:700}.suyu-badge{display:inline-flex;padding:6px 10px;border-radius:999px;background:var(--suyu-sand);font-size:.72rem;font-weight:800}.suyu-badge--accent{background:#f4ded5;color:#8c4934}
/* Featured */
.suyu-section--featured{padding-top:112px;padding-bottom:112px}.suyu-featured{display:grid;grid-template-columns:1.05fr .95fr;min-height:590px;border-radius:28px;overflow:hidden;background:var(--suyu-primary);box-shadow:var(--suyu-shadow)}.suyu-featured__media{min-height:100%;background:var(--suyu-sand)}.suyu-featured__img{height:100%;min-height:590px}.suyu-featured__content{padding:clamp(40px,6vw,78px);display:flex;flex-direction:column;justify-content:center;color:white}.suyu-featured__content h2{font-size:clamp(2.5rem,4.5vw,4.6rem);line-height:.98;color:white;margin:.1em 0 .2em}.suyu-featured__content .suyu-eyebrow{color:#dce4d3}.suyu-featured__content .suyu-lead,.suyu-featured__content>p{color:rgba(255,255,255,.78)}.suyu-checklist{list-style:none;padding:0;margin:24px 0;display:grid;gap:10px}.suyu-checklist li{position:relative;padding-left:26px}.suyu-checklist li:before{content:"✓";position:absolute;left:0;color:#fff;font-weight:900}.suyu-featured__price{margin-top:4px}.suyu-featured__price strong{font-size:2rem;color:white}.suyu-featured__price .suyu-price-prefix{color:rgba(255,255,255,.65)}.suyu-featured .suyu-btn--primary{background:#fff;color:var(--suyu-primary)}.suyu-featured .suyu-btn--ghost{border-color:rgba(255,255,255,.34);background:transparent;color:white}
/* Projects / before-after / testimonials */
.suyu-project-card .suyu-card__img{aspect-ratio:5/4}.suyu-before-after{display:grid;grid-template-columns:1fr 1fr;gap:20px}.suyu-before-after figure{margin:0;position:relative}.suyu-before-after img{border-radius:var(--suyu-radius)}.suyu-before-after figure span{position:absolute;top:14px;left:14px;background:rgba(36,35,31,.82);color:#fff;padding:6px 10px;border-radius:999px;font-size:.72rem;font-weight:800}.suyu-testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.suyu-testimonial{background:var(--suyu-surface);border:1px solid var(--suyu-border);border-radius:var(--suyu-radius);padding:28px}.suyu-testimonial p{font-size:1.05rem;line-height:1.7}.suyu-testimonial footer{display:flex;flex-direction:column;gap:4px;margin-top:22px}.suyu-testimonial footer span{color:var(--suyu-muted);font-size:.86rem}
/* CTA */
.suyu-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:36px;background:var(--suyu-primary);color:#fff;border-radius:28px;margin-top:72px;margin-bottom:96px;padding:clamp(38px,5vw,64px)!important}.suyu-cta h2{font-size:clamp(2rem,4vw,4rem);line-height:1.02;color:#fff;margin:0 0 12px}.suyu-cta p{color:rgba(255,255,255,.78);max-width:650px}.suyu-cta .suyu-section-visual{height:220px;margin:28px 0 0}.suyu-cta .suyu-btn--primary{background:#fff;color:var(--suyu-primary)}.suyu-cta .suyu-btn--ghost,.suyu-cta .suyu-btn--secondary{border-color:rgba(255,255,255,.35);color:#fff;background:transparent}
/* Service detail */
.suyu-service-detail{max-width:var(--suyu-max);margin:0 auto;padding:72px 28px}.suyu-feature-list{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:34px 0}.suyu-feature-list>div{background:var(--suyu-surface);border:1px solid var(--suyu-border);padding:18px;border-radius:12px}.suyu-feature-list strong,.suyu-feature-list span{display:block}.suyu-feature-list span{color:var(--suyu-muted);margin-top:5px}
.suyu-faq{border-bottom:1px solid var(--suyu-border);padding:16px 0}.suyu-faq summary{font-weight:800;cursor:pointer}
@media(max-width:1020px){.suyu-home-section{padding:82px 24px}.suyu-featured{grid-template-columns:1fr}.suyu-featured__img{min-height:430px;max-height:560px}.suyu-grid--services,.suyu-grid--projects,.suyu-grid--blog,.suyu-testimonials{grid-template-columns:repeat(2,1fr)}.suyu-grid--problems,.suyu-grid--value,.suyu-grid--process,.suyu-selector{grid-template-columns:repeat(2,1fr)}.suyu-feature-list{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.suyu-public-header__inner{position:relative;min-height:70px;padding:10px 24px}.suyu-public-brand__descriptor{display:none}.suyu-public-nav-toggle{display:inline-flex}.suyu-public-nav{position:absolute;top:100%;left:24px;right:24px;display:grid!important;align-items:stretch;gap:10px;padding:18px;background:var(--suyu-surface);border:1px solid var(--suyu-border);border-radius:0 0 16px 16px;box-shadow:var(--suyu-shadow)}.suyu-public-nav[hidden]{display:none!important}.suyu-public-nav__links{display:grid!important;align-items:stretch;gap:0}.suyu-public-nav__links a{display:block;padding:12px 4px;border-bottom:1px solid var(--suyu-border);font-size:1rem}.suyu-public-nav__cta{width:100%;margin-top:4px}.suyu-public-header.is-menu-open{z-index:40}}
@media(max-width:820px) and (min-width:681px){.suyu-hero{grid-template-columns:minmax(0,1.08fr) minmax(250px,.92fr);min-height:560px;gap:28px;padding-top:58px;padding-bottom:64px}.suyu-hero h1{font-size:clamp(3.1rem,7.4vw,4.7rem)}.suyu-hero__media{max-width:360px}.suyu-hero__media picture{height:320px}.suyu-hero__micro{margin-top:24px;padding-top:18px}.suyu-home .suyu-cta{grid-template-columns:1fr!important;gap:28px;align-items:stretch}.suyu-cta .suyu-section-visual{width:100%;max-width:none;height:260px;margin-bottom:0}.suyu-cta .suyu-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;margin-top:0}.suyu-cta .suyu-actions .suyu-btn{width:100%}}
@media(max-width:680px){.suyu-public-header__inner{padding-left:18px;padding-right:18px}.suyu-public-nav{left:18px;right:18px}.suyu-home-section{padding:64px 18px}.suyu-section-head{margin-bottom:28px}.suyu-section-head h2{font-size:clamp(2rem,11vw,3rem)}.suyu-section-visual{height:220px;margin-bottom:28px;border-radius:18px}.suyu-hero{padding-top:46px;padding-bottom:58px;gap:28px}.suyu-hero h1{font-size:clamp(3.1rem,15vw,4.8rem)}.suyu-hero__media{max-width:none}.suyu-hero__media:before{inset:7% -2% -4% 7%;border-radius:22px}.suyu-hero__media picture{height:260px}.suyu-hero__img{border-radius:22px}.suyu-grid--services,.suyu-grid--projects,.suyu-grid--blog,.suyu-testimonials,.suyu-grid--problems,.suyu-grid--value,.suyu-grid--process,.suyu-selector,.suyu-before-after{grid-template-columns:1fr}.suyu-featured{border-radius:20px}.suyu-featured__img{min-height:330px}.suyu-featured__content{padding:34px 26px 40px}.suyu-card__footer{align-items:flex-start;flex-direction:column}.suyu-home .suyu-cta{width:calc(100% - 36px)!important;grid-template-columns:1fr;gap:24px;border-radius:22px;margin:24px auto 24px;padding:40px 20px!important;overflow:hidden}.suyu-cta .suyu-section-visual{height:170px;margin-top:22px;margin-bottom:0}.suyu-cta .suyu-actions{width:100%;margin-top:0}.suyu-actions .suyu-btn{width:100%}.suyu-feature-list{grid-template-columns:1fr}}
/* Mobile keeps the image below the text, never alongside it. */
@media(max-width:680px){.suyu-hero{grid-template-columns:1fr;min-height:auto}}
