/* DIBAMED V179 — compact premium refinement.
   CSS-only enhancement: no external libraries, fonts or runtime JS. */

/* Keep all post-hero sections tighter and easier to scan. */
.d177-happy-patients,
.d178-why,
.d178-journey,
.d178-trust-faq{
    padding-block:clamp(58px,6vw,86px)!important;
}
.d178-section-head,
.d177-patients-head{
    align-items:center;
    gap:clamp(26px,4vw,58px);
    margin-bottom:clamp(28px,3.4vw,46px);
}
.d178-section-head h2,
.d177-patients-head h2{
    max-width:780px!important;
    font-size:clamp(36px,3.35vw,58px)!important;
    line-height:1.01!important;
    letter-spacing:-.043em!important;
}
.d178-head-side{gap:14px;}
.d178-head-side p,.d177-patients-intro p{font-size:15.5px;line-height:1.58;}
.d178-text-link{font-size:13.5px;}

/* Patient cards remain premium, but no longer dominate the page. */
.d177-patient-grid{gap:clamp(16px,1.5vw,24px);}
.d177-patient-card{border-radius:27px;box-shadow:0 18px 54px rgba(6,23,53,.09);}
.d177-patient-media{aspect-ratio:4/4.35;}
.d177-patient-body{padding:20px 21px 23px;}
.d177-patient-body h3{margin-bottom:11px;font-size:clamp(20px,1.25vw,25px);}
.d177-patient-body blockquote{font-size:14px;line-height:1.56;}

/* Three compact image-led benefit cards using existing cached 3D service art. */
.d178-benefit-grid{gap:clamp(16px,1.5vw,24px);}
.d178-benefit-card,
.d178-benefit-card--featured{
    min-height:315px!important;
    padding:27px 28px 28px!important;
    border-radius:27px!important;
    box-shadow:0 18px 54px rgba(5,31,48,.09)!important;
}
.d178-benefit-card:hover{transform:translateY(-5px);box-shadow:0 26px 70px rgba(5,31,48,.13)!important;}
.d178-benefit-card::after{width:150px;height:150px;inset:auto -75px -82px;}
.d178-icon.d179-icon-3d{
    width:94px!important;
    height:82px!important;
    margin:0 0 18px!important;
    padding:3px;
    overflow:visible;
    border-radius:22px!important;
    background:linear-gradient(145deg,rgba(226,251,246,.86),rgba(255,244,220,.82))!important;
    box-shadow:0 14px 34px rgba(0,100,94,.12)!important;
}
.d179-icon-3d img{
    display:block;
    width:102px;
    height:102px;
    max-width:none;
    object-fit:contain;
    transform:translateY(-11px);
    filter:drop-shadow(0 15px 14px rgba(4,54,62,.18));
}
.d178-benefit-card--featured .d179-icon-3d{background:rgba(255,255,255,.11)!important;border:1px solid rgba(255,255,255,.15);}
.d178-benefit-card h3{margin-bottom:11px!important;font-size:clamp(21px,1.45vw,27px)!important;line-height:1.08!important;}
.d178-benefit-card p{margin-bottom:17px!important;font-size:14px!important;line-height:1.54!important;}
.d178-benefit-card>a{font-size:12.5px!important;}
.d178-index{top:23px!important;inset-inline-end:25px!important;}
.d178-card-cta.d179-inline-cta{
    width:max-content;
    padding:0!important;
    border-radius:0!important;
    color:#ffe7b3!important;
    background:none!important;
    box-shadow:none!important;
}

/* Journey: shorter cards and tactile 3D illustrations instead of dated line icons. */
.d178-journey-grid{gap:14px!important;}
.d178-journey-grid::before{top:54px!important;}
.d178-journey-card{
    min-height:250px!important;
    padding:22px 20px 23px!important;
    border-radius:23px!important;
    box-shadow:0 15px 44px rgba(5,31,48,.075)!important;
}
.d178-journey-card:hover{transform:translateY(-4px);box-shadow:0 22px 58px rgba(5,31,48,.11)!important;}
.d178-journey-number{min-width:36px!important;height:28px!important;font-size:10px!important;}
.d178-journey-symbol.d179-journey-3d{
    width:78px!important;
    height:67px!important;
    margin:14px 0 15px!important;
    padding:0!important;
    overflow:visible;
    border-radius:19px!important;
    background:linear-gradient(145deg,#eafbf7,#fff7e8)!important;
    box-shadow:0 11px 27px rgba(6,83,80,.10)!important;
}
.d179-journey-3d img{
    display:block;
    width:84px;
    height:84px;
    max-width:none;
    object-fit:contain;
    transform:translateY(-9px);
    filter:drop-shadow(0 12px 12px rgba(4,54,62,.16));
}
.d178-journey-card h3{margin-bottom:9px!important;font-size:clamp(17px,1.12vw,21px)!important;line-height:1.12!important;}
.d178-journey-card p{font-size:12.8px!important;line-height:1.48!important;}

/* Trust + FAQ: compact, balanced, and readable without billboard-scale headings. */
.d178-trust-faq-grid{
    grid-template-columns:minmax(0,.76fr) minmax(500px,1.24fr)!important;
    gap:clamp(22px,3vw,42px)!important;
}
.d178-trust-panel,.d178-faq-panel{
    padding:clamp(30px,3.1vw,46px)!important;
    border-radius:30px!important;
    box-shadow:0 20px 62px rgba(5,31,48,.10)!important;
}
.d178-trust-panel h2{
    max-width:480px!important;
    font-size:clamp(34px,3.15vw,52px)!important;
    line-height:1.01!important;
}
.d178-faq-panel h2{
    max-width:650px!important;
    font-size:clamp(35px,3.25vw,55px)!important;
    line-height:1.01!important;
}
.d178-google-score{margin:24px 0 18px!important;padding:19px 21px!important;border-radius:21px!important;}
.d178-google-score strong{font-size:clamp(40px,3vw,55px)!important;}
.d178-google-score span{font-size:14px!important;}
.d178-trust-points{margin-bottom:20px!important;}
.d178-trust-points span{padding:7px 10px!important;font-size:10.5px!important;}
.d178-trust-actions{gap:16px!important;}
.d178-faq-list{margin-top:22px!important;}
.d178-faq-list summary{padding:18px 0!important;font-size:clamp(15px,1vw,18px)!important;}
.d178-faq-list details p{padding-bottom:18px!important;font-size:13.5px!important;line-height:1.55!important;}
.d178-faq-cta{margin-top:19px!important;font-size:13px;}

/* Compact guidance band: no duplicate Book Appointment button. */
.d178-final.d179-guidance{padding:38px 0 44px!important;background:linear-gradient(180deg,#f8fffd,#fffaf5)!important;}
.d179-guidance-card{
    min-height:0!important;
    grid-template-columns:minmax(0,1.18fr) minmax(250px,.62fr)!important;
    gap:clamp(25px,4vw,62px)!important;
    padding:clamp(34px,4vw,52px)!important;
    border-radius:32px!important;
    background:linear-gradient(132deg,#053f56 0%,#00786f 57%,#069987 100%)!important;
    box-shadow:0 25px 76px rgba(4,42,55,.18)!important;
}
.d179-guidance-card::before{opacity:.65;}
.d179-guidance .d178-final-copy h2{
    max-width:700px!important;
    font-size:clamp(35px,3.45vw,57px)!important;
    line-height:1.01!important;
}
.d179-guidance .d178-final-copy>p{max-width:680px!important;margin-top:16px!important;font-size:15px!important;line-height:1.58!important;}
.d179-guidance-links{display:flex;flex-wrap:wrap;gap:22px;margin-top:23px;}
.d179-guidance-links a{display:inline-flex;align-items:center;gap:8px;color:#ffe5ad;font-size:13.5px;font-weight:950;transition:transform .2s ease,color .2s ease;}
.d179-guidance-links a:hover{color:#fff;transform:translateY(-2px);}
.d179-guidance-visual{min-height:220px!important;}
.d179-guidance-visual>img{
    position:relative;
    z-index:2;
    display:block;
    width:min(235px,72%);
    height:auto;
    object-fit:contain;
    filter:drop-shadow(0 24px 28px rgba(0,0,0,.24));
}
.d179-guidance-visual .d178-orbit--one{width:270px!important;height:130px!important;}
.d179-guidance-visual .d178-orbit--two{width:180px!important;height:280px!important;}

/* Footer: concise information architecture, one useful location action, no repeated booking CTA. */
.d178-footer{padding:50px var(--pad,clamp(22px,4vw,76px)) 22px!important;}
.d178-footer__hero{
    grid-template-columns:minmax(0,1fr) minmax(260px,.34fr)!important;
    gap:clamp(28px,4vw,58px)!important;
    padding-bottom:30px!important;
}
.d178-footer__brand{grid-template-columns:130px minmax(0,1fr)!important;gap:25px!important;}
.d178-footer__logo img{width:120px!important;}
.d178-footer__brand h2{max-width:650px!important;font-size:clamp(27px,2.35vw,41px)!important;line-height:1.03!important;}
.d178-footer__brand p{max-width:690px!important;margin-top:11px!important;font-size:14px!important;line-height:1.55!important;}
.d179-footer__quick-actions{display:block!important;}
.d179-footer__map-action{padding:13px 15px!important;border-radius:18px!important;}
.d178-footer__action svg{width:36px!important;height:36px!important;}
.d178-footer__action strong{font-size:13px!important;}
.d178-footer__trust.d179-footer__trust{gap:12px!important;margin:22px 0 30px!important;}
.d179-footer__trust article{
    min-height:76px;
    grid-template-columns:58px minmax(0,1fr)!important;
    column-gap:11px!important;
    padding:12px 15px!important;
    border-radius:17px!important;
}
.d179-footer__trust article>span.d179-footer-trust-art{
    grid-row:1/3;
    display:grid;
    place-items:center;
    width:54px!important;
    height:50px!important;
    overflow:visible;
    border:0!important;
    border-radius:15px!important;
    background:rgba(255,255,255,.08)!important;
}
.d179-footer-trust-art img{display:block;width:59px;height:59px;max-width:none;object-fit:contain;filter:drop-shadow(0 8px 8px rgba(0,0,0,.18));transform:translateY(-4px);}
.d178-footer__trust strong{font-size:13px!important;}
.d178-footer__trust small{font-size:10.5px!important;}
.d178-footer__grid{gap:clamp(26px,3vw,48px)!important;padding-bottom:30px!important;}
.d178-footer__column h3{margin-bottom:15px!important;font-size:11.5px!important;}
.d178-footer__column>a{margin-bottom:9px!important;font-size:13.5px!important;}
.d178-footer__contact bdi,.d178-footer__contact address{font-size:12.5px!important;}
.d178-footer__social p{margin-bottom:13px!important;font-size:12.5px!important;}
.d178-footer__social-links a{padding:9px 10px!important;border-radius:13px!important;font-size:11px!important;}
.d178-footer__social-links svg{width:18px!important;height:18px!important;}
.d178-footer__bottom{padding-top:18px!important;}

@media (max-width:1280px){
    .d178-journey-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;}
}
@media (max-width:1120px){
    .d178-trust-faq-grid{grid-template-columns:1fr!important;}
    .d178-trust-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,.72fr);gap:22px;align-items:center;}
    .d178-trust-panel .d55-eyebrow,.d178-trust-panel h2{grid-column:1;}
    .d178-google-score{grid-column:2;grid-row:1/4;margin:0!important;}
    .d178-trust-points,.d178-trust-actions{grid-column:1;}
    .d178-footer__hero,.d179-guidance-card{grid-template-columns:1fr!important;}
    .d179-guidance-visual{min-height:190px!important;}
    .d178-footer__quick-actions{max-width:420px;}
}
@media (max-width:920px){
    .d178-benefit-grid{grid-template-columns:1fr 1fr!important;}
    .d178-benefit-card--featured{grid-column:1/-1!important;}
    .d178-journey-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
    .d178-journey-grid::before{display:none!important;}
    .d178-footer__hero{grid-template-columns:1fr!important;}
    .d178-footer__brand{grid-template-columns:110px minmax(0,1fr)!important;}
}
@media (max-width:760px){
    .d177-happy-patients,.d178-why,.d178-journey,.d178-trust-faq{padding-block:45px!important;}
    .d178-section-head,.d177-patients-head{gap:17px!important;margin-bottom:26px!important;}
    .d178-section-head h2,.d177-patients-head h2{font-size:clamp(33px,10vw,45px)!important;}
    .d178-benefit-grid,.d178-journey-grid{grid-template-columns:1fr!important;}
    .d178-benefit-card,.d178-benefit-card--featured{min-height:0!important;padding:24px!important;}
    .d178-journey-card{min-height:0!important;padding:20px!important;}
    .d178-trust-panel{display:block!important;}
    .d178-google-score{margin:20px 0 16px!important;}
    .d178-trust-panel h2,.d178-faq-panel h2{font-size:clamp(32px,9.5vw,43px)!important;}
    .d178-trust-panel,.d178-faq-panel{padding:27px 21px!important;border-radius:25px!important;}
    .d179-guidance{padding-inline:10px!important;}
    .d179-guidance-card{padding:29px 22px!important;border-radius:27px!important;}
    .d179-guidance .d178-final-copy h2{font-size:clamp(32px,9.4vw,44px)!important;}
    .d179-guidance-visual{min-height:170px!important;}
    .d179-guidance-visual>img{width:180px;}
    .d179-guidance-links{gap:15px;}
    .d178-footer{padding:42px 20px 20px!important;}
    .d178-footer__brand{grid-template-columns:1fr!important;text-align:center;}
    .d178-footer__logo img{width:105px!important;}
    .d178-footer__brand h2{font-size:32px!important;}
    .d178-footer__trust.d179-footer__trust{grid-template-columns:1fr!important;}
}
@media (max-width:420px){
    .d177-patient-media{aspect-ratio:4/4.45!important;}
    .d178-section-head h2,.d177-patients-head h2{font-size:34px!important;}
    .d178-faq-list summary{grid-template-columns:minmax(0,1fr) 30px!important;gap:10px!important;}
    .d178-faq-list summary i{width:30px!important;height:30px!important;}
}
@media (prefers-reduced-motion:reduce){
    .d179-guidance-links a,.d179-icon-3d img,.d179-journey-3d img{transition:none!important;transform:none!important;}
}
