/* Saeed Academy: coaching enquiries and client-supplied assessment definitions. */
.sa-assessments{padding:clamp(56px,7vw,100px) 0;background:#f6f4ee;scroll-margin-top:110px}
.sa-assessment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.sa-assessment-card{display:flex;flex-direction:column;align-items:flex-start;padding:30px;border:1px solid #dedbd1;border-radius:20px;background:#fff;min-width:0}
.sa-measure-code{display:block;color:#6e7362;font-size:.77rem;font-weight:800;letter-spacing:.1em;margin-bottom:18px}
.sa-assessment-card h3{color:#26392f;font-size:1.3rem;margin:0 0 14px;line-height:1.6}
.sa-assessment-card p{font-size:.97rem;line-height:1.95;color:#53584f;margin:0 0 22px}
.sa-measure-purpose{margin-top:auto;padding-top:14px;border-top:1px solid #e9e6df;width:100%;font-size:.85rem;font-weight:700;color:#6c5a40}
.sa-assessment-action{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:28px;padding:24px 28px;background:#ecebe2;border-radius:16px}
.sa-assessment-action p{margin:0;font-weight:600;color:#354333}
#leadBookingForm .sa-form-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
#leadBookingForm .form-group{min-width:0;margin:0}
#leadBookingForm .sa-full{grid-column:1/-1}
#leadBookingForm [hidden]{display:none!important}
#leadBookingForm .form-control{width:100%;min-width:0;max-width:100%;font-size:16px;box-sizing:border-box}
#leadBookingForm select.form-control{padding-inline-end:32px;text-overflow:ellipsis;height:54px}
#leadBookingForm textarea{min-height:100px;resize:vertical}
#leadBookingForm .sa-optional{font-size:.84rem;font-weight:400;color:#687066}
#leadBookingForm .sa-session-mode{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:12px}
#leadBookingForm .sa-session-mode legend{font-weight:700;margin-bottom:12px;font-size:.95rem}
#leadBookingForm .sa-session-mode label{display:flex;align-items:center;gap:10px;flex:1;min-width:100px;padding:14px 18px;border:1px solid #d4d9cf;border-radius:12px;cursor:pointer;color:#354333}
#leadBookingForm .sa-session-mode label:has(input:checked){background:#edf1e9;border-color:#5e715b}
#leadBookingForm .sa-session-mode input{accent-color:#40593e;width:18px;height:18px;flex:none}
#leadBookingForm .sa-booking-hint{font-size:.85rem;line-height:1.8;color:#687066;margin:22px 0 16px}
#leadSubmitBtn{width:100%;min-height:52px}#leadSubmitBtn:disabled{opacity:.65;cursor:wait}
#formFeedback{border:1px solid transparent;border-radius:12px;line-height:1.8;font-size:.95rem}
#formFeedback:not(:empty){padding:15px;margin-bottom:20px}
@media(max-width:1050px){.sa-assessment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.sa-assessment-grid{grid-template-columns:1fr;gap:14px}.sa-assessment-card{padding:24px}.sa-assessment-action{flex-direction:column;align-items:stretch;padding:22px;text-align:center}.sa-assessment-action .btn{justify-content:center}#leadBookingForm .sa-form-fields{grid-template-columns:1fr;gap:18px}#contact .lead-form-wrap{padding:24px 18px;order:-1}#contact .contact-grid{gap:24px}}

/* The owner's preferred speaking portrait is framed at the base of the hero. */
#hero.sa-haram-hero .sa-portrait-panel{overflow:hidden;max-width:490px;height:550px;background:#193b31!important;border-radius:22px 22px 0 0!important}
#hero.sa-haram-hero .rh-portrait{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:50% 22%!important;transform:none!important;border-radius:0!important;max-width:none!important}
#about-saeed .about-image-wrap{background:#e1e7da}
#about-saeed .about-image-wrap img{object-fit:contain!important;object-position:50% 100%!important}
.sa-measure-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;margin-top:22px}
.sa-measure-price{font-size:1.65rem;line-height:1.4;font-weight:800;color:#2d493b;white-space:nowrap}
.sa-measure-price small{font-size:.85rem;font-weight:500}
.sa-measure-footer .btn{font-size:.85rem;min-height:44px;padding:10px 14px;gap:8px}
.sa-measure-video{margin-top:18px;width:100%}.sa-measure-video summary{color:#3f6459;cursor:pointer;font-size:.9rem;font-weight:700;line-height:1.8;min-height:40px;display:flex;align-items:center;gap:10px}
.sa-measure-video video{display:block;width:100%;max-height:460px;background:#131815;border-radius:12px;margin-top:10px;object-fit:contain}
.sa-request-wrap{margin-top:36px;display:grid;grid-template-columns:.8fr 1.3fr;gap:48px;align-items:start;padding:36px;border:1px solid #d8ded2;border-radius:22px;background:#eef1e8;scroll-margin-top:110px}
.sa-request-intro h3{font-size:1.75rem;color:#2b4436;margin:18px 0 12px;line-height:1.6}
.sa-request-intro p{color:#52604f;line-height:1.9}.sa-request-intro .sa-request-note{font-size:.88rem;margin-top:20px;color:#66715e}
#saAssessmentForm .sa-form-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
#saAssessmentForm .form-group{min-width:0;margin:0}#saAssessmentForm .sa-full{grid-column:1/-1}
#saAssessmentForm .form-control{width:100%;max-width:100%;min-width:0;font-size:16px;box-sizing:border-box;background:#fff}
#saAssessmentForm select{height:54px;text-overflow:ellipsis;padding-inline-end:32px}
#saAssessmentForm textarea{min-height:100px;resize:vertical}#saAssessmentForm .sa-optional{font-size:.8rem;font-weight:400;color:#687066}
.sa-submit{width:100%;margin-top:22px;min-height:52px}.sa-submit:disabled{opacity:.65;cursor:wait}
.sa-form-feedback:not(:empty){padding:15px;margin-bottom:20px;border:1px solid;border-radius:12px;line-height:1.8}
.sa-media{padding:clamp(56px,7vw,100px) 0;background:#eeeee5;scroll-margin-top:100px}
.sa-intro-video{max-width:900px;margin:auto;background:#1a3027;border-radius:20px;overflow:hidden;border:1px solid #324b3b;box-shadow:0 16px 40px #24352412}
.sa-intro-video video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#111813}
.sa-intro-video p{margin:0;padding:18px 24px;display:flex;justify-content:space-between;align-items:center;gap:12px;color:#f4f2e9;font-size:1rem;line-height:1.8}
.sa-intro-video p span{font-size:.8rem;color:#c2cbbd;white-space:nowrap}
.sa-gallery-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:48px 0 20px}
.sa-gallery-heading h3{font-size:1.4rem;color:#304a3d}.sa-gallery-heading p{font-size:.85rem;color:#647061;margin:0}
.sa-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.sa-photo-grid figure,.sa-poster-grid figure{margin:0;background:#fafaf4;border:1px solid #d8ded2;border-radius:16px;overflow:hidden;min-width:0}
.sa-photo-grid a,.sa-poster-grid a{display:block;background:#e0e5db}
.sa-photo-grid img{display:block;width:100%!important;height:auto!important;aspect-ratio:4/3!important;object-fit:cover!important}
.sa-photo-grid figcaption,.sa-poster-grid figcaption{padding:14px 16px;font-size:.9rem;color:#40503f;line-height:1.8}
.sa-media-details{border:1px solid #d8ded2;border-radius:16px;margin-top:24px;background:#f9faf4;overflow:hidden}
.sa-media-details summary{padding:20px 24px;cursor:pointer;font-weight:700;color:#344c3b;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;line-height:1.7}
.sa-media-details summary::-webkit-details-marker{display:none}.sa-media-details summary span{font-size:1.4rem;font-weight:400}.sa-media-details[open] summary span{transform:rotate(45deg)}
.sa-poster-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:0 24px 24px;align-items:start}
.sa-poster-grid img{display:block;width:100%!important;height:310px!important;object-fit:contain!important;background:#e9ece3;padding:10px;box-sizing:border-box}
.sa-comparison{display:block;width:min(100%,680px)!important;height:auto!important;max-height:none!important;margin:0 auto 24px;object-fit:contain!important}
.sa-photo-dialog{position:fixed;inset:0;width:max-content;max-width:94vw;height:max-content;max-height:94dvh;margin:auto;padding:50px 16px 16px;border:1px solid #5d6d60;border-radius:18px;background:#172a21;color:#fff;overflow:auto;box-sizing:border-box}
.sa-photo-dialog::backdrop{background:#08140fdd;backdrop-filter:blur(5px)}
.sa-photo-dialog #saPhotoImage{display:block;width:auto!important;height:auto!important;max-width:calc(94vw - 34px)!important;max-height:73dvh!important;object-fit:contain!important;border-radius:4px}
.sa-photo-dialog p{text-align:center;margin:14px 0 0;line-height:1.8;font-size:.9rem;max-width:800px;color:#f2f4ed}
.sa-photo-close{position:absolute;top:4px;left:8px;width:44px;height:44px;border:0;background:transparent;color:#fff;font-size:32px;line-height:1;cursor:pointer}
@media(max-width:1050px){.sa-request-wrap{grid-template-columns:1fr;gap:20px}.sa-poster-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#hero.sa-haram-hero .sa-portrait-panel{height:490px}}
@media(max-width:700px){#hero.sa-haram-hero .sa-portrait-panel{width:100%;max-width:490px;height:auto;aspect-ratio:1.12;justify-self:center;margin-bottom:0}#hero.sa-haram-hero .rh-portrait{width:100%!important;height:100%!important;object-position:50% 24%!important}.sa-photo-grid{grid-template-columns:1fr}.sa-photo-grid img{aspect-ratio:4/3!important}.sa-gallery-heading{display:block}.sa-gallery-heading p{margin-top:8px}.sa-intro-video{border-radius:14px}.sa-intro-video p{display:block;padding:14px 18px}.sa-intro-video p span{display:block;margin-top:4px}.sa-request-wrap{padding:24px 18px;gap:20px}#saAssessmentForm .sa-form-fields{grid-template-columns:1fr}.sa-poster-grid{gap:14px;padding:0 14px 14px}.sa-poster-grid img{height:230px!important}.sa-media-details summary{padding:18px}.sa-photo-dialog p{max-width:82vw}}
@media(max-width:400px){.sa-poster-grid{grid-template-columns:1fr}.sa-poster-grid img{height:auto!important;max-height:400px!important}.sa-measure-footer .btn{padding:10px 12px}.sa-measure-footer{gap:10px}}
/* Appointment controls stay in the same readable card on mobile. */
.sa-appointment{min-width:0;margin:8px 0 0;padding:20px;border:1px solid #d0d9cd;border-radius:16px;background:#f5f7f2}.sa-appointment legend{font-weight:700;padding:0 8px}.sa-appointment p,.sa-payment-note p{font-size:14px;line-height:1.8;color:#55694d;margin:8px 0}.sa-payment-note{padding:18px;border-radius:12px;background:#f6eedc;color:#53462e}.sa-booking-form button:disabled{opacity:.55;cursor:wait}.sa-appointment input[type=date]{min-width:0;width:100%;max-width:100%;min-height:48px;color:#283c27;color-scheme:light}.sa-booking-form select{min-height:48px;width:100%}@media(max-width:540px){.sa-appointment{padding:14px}.sa-appointment .sa-form-fields{grid-template-columns:1fr}.sa-payment-note{padding:14px}}
#contact .contact-info-panel{align-self:start;justify-content:flex-start;gap:32px;height:auto}@media(min-width:992px){#contact .contact-info-panel{position:sticky;top:100px}}
/* Calm scroll reveals for the explanatory assessment section. */
.sa-assessment-card{position:relative;overflow:hidden;transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}.sa-assessment-card::before{content:"";position:absolute;top:0;inset-inline:30px;height:3px;background:linear-gradient(90deg,#657760,#c0a673);transform:scaleX(0);transform-origin:right;transition:transform .7s ease .15s}.sa-assessment-card.sa-card-visible::before{transform:scaleX(1)}.sa-reveal-ready .sa-assessment-card:not(.sa-card-visible){opacity:0;transform:translateY(28px)}.sa-reveal-ready .sa-card-visible{animation:sa-measure-reveal .7s both;animation-delay:var(--sa-reveal-delay,0ms)}@keyframes sa-measure-reveal{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@media(hover:hover){.sa-assessment-card:hover{border-color:#96a18a;box-shadow:0 18px 38px #223b2812}}@media(prefers-reduced-motion:reduce){.sa-assessment-card,.sa-assessment-card::before{animation:none!important;transition:none!important}.sa-reveal-ready .sa-assessment-card{opacity:1!important;transform:none!important}}
