/* ===== Services page (loads after style.css) ===== */

/* Hero */
.s-hero{min-height:max(calc(300 * var(--u,1px)),29.6vw);padding-top:calc(80 * var(--u,1px));padding-bottom:calc(30 * var(--u,1px))}
.s-hero .hero-text{max-width:calc(500 * var(--u,1px))}
.s-hero h1{font-size:clamp(calc(31.04 * var(--u,1px)),4vw,calc(54.32 * var(--u,1px)));margin:calc(8 * var(--u,1px)) 0 calc(14 * var(--u,1px))}
.s-hero .lead{max-width:calc(440 * var(--u,1px));font-size:calc(11.88 * var(--u,1px));margin-bottom:calc(18 * var(--u,1px))}
.s-hero::after{background:linear-gradient(90deg,rgba(8,40,28,.5),transparent 55%)}
.s-hero .hero-script{top:24%;right:5vw;text-align:left}
.orn{display:block;font-style:normal;font-family:var(--sans);font-size:calc(21.34 * var(--u,1px));color:var(--gold-2);margin:calc(8 * var(--u,1px)) 0 0 calc(28 * var(--u,1px))}

/* Feature strip */
.s-strip{padding:calc(12 * var(--u,1px)) 4vw;background:rgba(251,246,236,.95)}
.s-strip ul{display:grid;grid-template-columns:repeat(5,1fr)}
.s-strip li{display:flex;align-items:center;justify-content:center;gap:calc(12 * var(--u,1px));padding:calc(8 * var(--u,1px)) calc(10 * var(--u,1px));border-right:1px solid #e1dac3;font-size:calc(9.97 * var(--u,1px));font-weight:600;color:var(--ink)}
.s-strip li:last-child{border:0}
.s-strip img{flex:0 0 calc(36 * var(--u,1px));width:calc(36 * var(--u,1px));height:calc(32 * var(--u,1px));object-fit:contain;mix-blend-mode:multiply}

/* Services grid */
.s-services{padding:calc(30 * var(--u,1px)) 3.5vw calc(34 * var(--u,1px))}
.s-services .sec-head{margin-bottom:calc(22 * var(--u,1px))}
.s-services .sec-head h2{font-size:calc(32.98 * var(--u,1px))}
.s-services .sec-head p{max-width:calc(560 * var(--u,1px));margin:calc(4 * var(--u,1px)) auto 0;font-size:calc(11.4 * var(--u,1px))}
.svc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:calc(18 * var(--u,1px)) calc(18 * var(--u,1px))}
.svc{background:#fff;border-radius:calc(6 * var(--u,1px));overflow:hidden;box-shadow:0 calc(4 * var(--u,1px)) calc(16 * var(--u,1px)) rgba(0,0,0,.07);transition:.35s;display:flex;flex-direction:column;min-width:0}
.svc:hover{transform:translateY(calc(-5 * var(--u,1px)));box-shadow:0 calc(12 * var(--u,1px)) calc(26 * var(--u,1px)) rgba(0,0,0,.13)}
.svc-ph{aspect-ratio:227/119;background:linear-gradient(135deg,#cdd8c4,#e9dcc0);overflow:hidden}
.svc-body{display:grid;grid-template-columns:calc(30 * var(--u,1px)) minmax(0,1fr);gap:calc(10 * var(--u,1px));padding:calc(12 * var(--u,1px)) calc(12 * var(--u,1px)) calc(14 * var(--u,1px));flex:1}
.svc-ic{width:calc(30 * var(--u,1px));height:calc(30 * var(--u,1px));object-fit:contain;mix-blend-mode:multiply;margin-top:calc(2 * var(--u,1px))}
.svc h3{font-size:calc(14.55 * var(--u,1px));color:var(--green);line-height:1.2;margin-bottom:calc(4 * var(--u,1px))}
.svc p{font-size:calc(10.26 * var(--u,1px));color:var(--muted);line-height:1.5;margin-bottom:calc(8 * var(--u,1px))}
.svc a{font-size:calc(9.97 * var(--u,1px));font-weight:500;color:var(--gold)}

/* Process */
.s-process{background:rgba(230,235,221,.88);padding:calc(30 * var(--u,1px)) 4vw calc(34 * var(--u,1px))}
.s-process .sec-head{margin-bottom:calc(22 * var(--u,1px))}
.s-process .sec-head h2{font-size:calc(31.04 * var(--u,1px))}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:calc(34 * var(--u,1px))}
.steps li{position:relative}
.steps li:not(:last-child)::after{content:"→";position:absolute;right:calc(-26 * var(--u,1px));top:calc(10 * var(--u,1px));color:var(--gold);font-size:calc(15.52 * var(--u,1px))}
.st-top{display:flex;align-items:center;gap:calc(12 * var(--u,1px));margin-bottom:calc(6 * var(--u,1px))}
.st-top b{width:calc(22 * var(--u,1px));height:calc(22 * var(--u,1px));border-radius:50%;border:1px solid var(--green);color:var(--green);display:grid;place-items:center;font-size:calc(10.45 * var(--u,1px));font-weight:500;flex:0 0 calc(22 * var(--u,1px))}
.st-top img{width:calc(46 * var(--u,1px));height:calc(38 * var(--u,1px));object-fit:contain;mix-blend-mode:multiply}
.steps h3{font-family:var(--sans);font-size:calc(11.88 * var(--u,1px));font-weight:600;color:var(--ink);padding-left:calc(34 * var(--u,1px));margin-bottom:calc(2 * var(--u,1px))}
.steps p{font-size:calc(10.26 * var(--u,1px));color:var(--muted);padding-left:calc(34 * var(--u,1px));max-width:calc(240 * var(--u,1px));line-height:1.5}

/* Quote · FAQ · CTA */
.s-bottom{display:grid;grid-template-columns:1.25fr 1.15fr 1fr;padding:0;background:var(--cream);min-height:calc(210 * var(--u,1px))}
.sb-quote{position:relative;overflow:hidden;display:flex;align-items:center;padding:calc(30 * var(--u,1px)) 6% calc(30 * var(--u,1px)) 30%;min-height:calc(210 * var(--u,1px));z-index:0}
.sb-quote .bg-img{z-index:-1}
.sb-quote blockquote{font-family:var(--serif);font-style:italic;font-size:clamp(calc(15.52 * var(--u,1px)),1.6vw,calc(19.4 * var(--u,1px)));line-height:1.4;color:#3b3a33}
.sb-quote cite{display:block;font-family:var(--sans);font-style:normal;font-size:calc(9.03 * var(--u,1px));letter-spacing:.1em;color:#55544a;margin-top:calc(6 * var(--u,1px))}
.sb-faq{background:#fff;margin:0;padding:calc(16 * var(--u,1px)) calc(18 * var(--u,1px)) calc(14 * var(--u,1px));box-shadow:0 0 calc(20 * var(--u,1px)) rgba(0,0,0,.05);min-width:0}
.sb-faq h3{font-family:var(--serif);font-size:calc(15.52 * var(--u,1px));color:var(--green);display:flex;align-items:center;gap:calc(8 * var(--u,1px));margin-bottom:calc(8 * var(--u,1px))}
.sb-faq .q{width:calc(18 * var(--u,1px));height:calc(18 * var(--u,1px));border-radius:50%;border:1.5px solid var(--gold);color:var(--gold);display:grid;place-items:center;font:600 calc(11 * var(--u,1px)) var(--sans)}
.sb-faq details{border-top:1px solid #ece6d3}
.sb-faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:calc(10 * var(--u,1px));padding:calc(8 * var(--u,1px)) calc(2 * var(--u,1px));font-size:calc(9.97 * var(--u,1px));color:var(--ink)}
.sb-faq summary::-webkit-details-marker{display:none}
.sb-faq summary::after{content:"+";font-size:calc(13.3 * var(--u,1px));line-height:1;color:var(--green)}
.sb-faq details[open] summary::after{content:"−"}
.sb-faq details p{font-size:calc(9.97 * var(--u,1px));color:var(--muted);padding:0 calc(2 * var(--u,1px)) calc(10 * var(--u,1px));line-height:1.5}
.sb-faq summary:focus-visible{outline:calc(2 * var(--u,1px)) solid var(--gold);outline-offset:calc(2 * var(--u,1px))}
.sb-cta{background:linear-gradient(135deg,#0f3a2a,#1d4d3b);color:#fff;padding:calc(22 * var(--u,1px)) 7%;display:flex;flex-direction:column;align-items:flex-start;gap:calc(8 * var(--u,1px))}
.sb-cta .lotus{color:var(--gold-2);font-size:calc(19.4 * var(--u,1px))}
.sb-cta h3{font-size:clamp(calc(18.43 * var(--u,1px)),1.9vw,calc(23.28 * var(--u,1px)));line-height:1.15;color:#fff}
.sb-cta p{font-size:calc(9.97 * var(--u,1px));max-width:calc(230 * var(--u,1px))}
.sb-cta .reach{font-size:calc(9.97 * var(--u,1px));margin-top:calc(4 * var(--u,1px))}
.sb-cta .reach a{font-weight:500}

@media(max-width:1000px){
  .s-strip ul{grid-template-columns:repeat(2,1fr);gap:calc(6 * var(--u,1px))}
  .s-strip li{border-right:0;justify-content:flex-start}
  .svc-grid{grid-template-columns:repeat(2,1fr)}
  .steps{grid-template-columns:1fr 1fr}
  .steps li::after{display:none}
  .s-bottom{grid-template-columns:1fr}
  .s-hero .hero-script{display:none}
}
@media(max-width:560px){.svc-grid,.steps{grid-template-columns:1fr}}
