/* Morocco Travel Tours · V13 premium editorials · EN & ES */
:root{--mtt13-ink:#39261d;--mtt13-coffee:#60331e;--mtt13-sand:#fcf7ef;--mtt13-cream:#fffaf3;--mtt13-gold:#d8ac72;--mtt13-clay:#ce570c;--mtt13-border:#e9d5be}
.mtt12-main,.mtt-v10-main{overflow-x:clip}
.mtt10-home-services-grid,.mtt10-home-medina .mtt10-cards,.mtt10-home-daytrips .mtt10-cards,.mtt10-cards,.mtt12-cards{gap:clamp(18px,2.2vw,34px)!important;align-items:stretch!important}
/* Signature premium cards: one design system, all listings and related experiences. */
.mtt10-card{position:relative;background:linear-gradient(175deg,#fffefd 0%,#fff8ee 100%)!important;border:1px solid #e6c8a9!important;border-radius:20px!important;overflow:hidden;box-shadow:0 16px 40px rgba(74,43,20,.11)!important;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease!important;min-width:0!important;display:flex!important;flex-direction:column!important}
.mtt10-card:hover{transform:translateY(-5px);border-color:#b77a42!important;box-shadow:0 22px 50px rgba(74,43,20,.18)!important}
.mtt10-card-image{display:block!important;aspect-ratio:16/10!important;min-height:0!important;overflow:hidden!important;position:relative;background:#ead1af!important}
.mtt10-card-image:after{content:"";position:absolute;inset:58% 0 0;background:linear-gradient(transparent,rgba(41,21,11,.28));pointer-events:none}
.mtt10-card-image img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;aspect-ratio:16/10!important;transition:transform .5s ease}
.mtt10-card:hover .mtt10-card-image img{transform:scale(1.045)}
.mtt10-card-inner{display:flex!important;flex:1!important;flex-direction:column!important;align-items:flex-start!important;gap:13px!important;padding:clamp(23px,2vw,32px)!important}
.mtt10-card-inner:before{content:"MOROCCO · PRIVATE EXPERIENCES";display:block;color:#a65120;letter-spacing:.135em;font-size:.69rem;font-weight:850}
.mtt10-card h3{font-family:Georgia,serif!important;font-size:clamp(1.35rem,1.6vw,1.8rem)!important;line-height:1.28!important;color:var(--mtt13-ink)!important;overflow-wrap:break-word!important;margin:0!important;text-wrap:pretty}
.mtt10-card h3 a{color:inherit!important;text-decoration:none!important}
.mtt10-card p{color:#6f5948!important;line-height:1.7!important;font-size:1.02rem!important;min-height:0!important;margin:0 0 12px!important;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.mtt10-card-link{margin-top:auto!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:48px!important;background:linear-gradient(135deg,#d65c10,#b8460c)!important;color:#fff!important;font-weight:780!important;border-radius:10px!important;padding:12px 17px!important;text-decoration:none!important;box-shadow:0 9px 18px rgba(176,72,14,.17)!important}
.mtt10-card-link:hover,.mtt10-card-link:focus-visible{background:#813b1c!important;color:#fff!important}
.mtt10-home-services .mtt10-card-inner:before,.mtt10-home-daytrips .mtt10-card-inner:before,.mtt10-home-medina .mtt10-card-inner:before{content:"DISCOVER MOROCCO"}
html[lang^="es"] .mtt10-card-inner:before{content:"EXPERIENCIAS EN MARRUECOS"}
.mtt10-card-photo-fallback{min-height:220px!important}
/* Tour details and itinerary stages */
.mtt12-detail-primary,.mtt12-detail-grid,.mtt12-page-frame{max-width:100%!important;min-width:0}
.mtt10-itinerary .mtt10-section-title h2,.mtt13-medina-itinerary .mtt12-section-head h2{font-size:clamp(1.9rem,3vw,2.7rem)!important;text-wrap:balance}
.mtt10-itinerary-step{border:1px solid #e5c8a9!important;border-left:4px solid #c75815!important;padding:clamp(20px,2.1vw,34px)!important;gap:clamp(12px,1.3vw,25px)!important;background:#fffdf9!important;margin-bottom:18px!important;box-shadow:0 10px 26px #4c2d190a!important}
.mtt10-itinerary-step h3{font-size:clamp(1.38rem,2vw,1.93rem)!important;line-height:1.36!important;overflow-wrap:anywhere!important}
.mtt10-itinerary-step p{font-size:1.06rem!important;line-height:1.86!important;color:#57473a!important}
.mtt10-inclusions{clear:both;gap:25px!important;margin:65px 0!important}
.mtt10-inclusions>div{border:1px solid #e6c8ae!important;border-top:5px solid #c96014!important;box-shadow:0 12px 32px #5f351013!important;background:#fffdf8!important}
.mtt10-inclusions>div:nth-child(2){border-top-color:#745342!important}
.mtt10-inclusions h2{font-family:Georgia,serif!important;font-size:clamp(1.45rem,1.9vw,2rem)!important}
.mtt10-inclusions li{line-height:1.75!important}
.mtt12-inline-enquiry{margin:66px 0 35px!important}
.mtt12-related{margin-top:65px!important}
/* Gallery: one featured frame + 3 complementary views. Never a full-bleed narrow strip. */
.mtt13-service-gallery{padding-top:55px!important;padding-bottom:60px!important;max-width:1480px!important}
.mtt13-service-gallery h2{margin:10px 0 26px;color:var(--mtt13-ink);font-family:Georgia,serif;font-size:clamp(1.9rem,3vw,2.8rem)}
.mtt13-gallery-grid,.mtt12-gallery{display:grid!important;grid-template-columns:1.27fr .8fr .8fr!important;grid-auto-rows:minmax(180px,auto)!important;gap:15px!important;max-width:100%!important;min-width:0}
.mtt13-gallery-grid figure,.mtt12-gallery figure{position:relative;margin:0!important;overflow:hidden!important;border-radius:16px!important;border:1px solid var(--mtt13-border)!important;background:#fff!important;box-shadow:0 12px 25px #492d140e!important;min-width:0}
.mtt13-gallery-grid figure:first-child,.mtt12-gallery figure:first-child{grid-row:span 2!important}
.mtt13-gallery-grid figure:nth-child(4),.mtt12-gallery figure:nth-child(4){grid-column:2 / span 2!important}
.mtt13-gallery-grid img,.mtt12-gallery img{width:100%!important;height:100%!important;max-height:400px!important;min-height:180px;object-fit:cover!important;display:block!important}
.mtt13-gallery-grid figure:first-child img,.mtt12-gallery figure:first-child img{max-height:none!important;height:100%!important;min-height:395px}
.mtt13-gallery-grid figcaption,.mtt12-gallery figcaption{position:absolute;inset:auto 0 0!important;padding:20px 16px 14px!important;background:linear-gradient(transparent,rgba(30,17,11,.79))!important;color:#fff!important;font-size:.88rem!important;font-weight:750!important;line-height:1.4!important}
.mtt12-gallery-section{margin-top:60px!important;margin-bottom:60px!important}
/* No blank destination iframe. A real path diagram is present unless Maps Embed API is configured. */
.mtt13-route-section{padding:20px 0;margin:52px 0 68px;min-width:0}
.mtt13-map-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(290px,.75fr);gap:22px;align-items:stretch}
.mtt13-map-diagram{position:relative;background:#f6e8d4;border:1px solid #e5cbb0;border-radius:19px;overflow:hidden;min-height:430px}
.mtt13-map-static{position:relative;min-height:430px;height:100%;overflow:hidden;background:radial-gradient(ellipse at 25% 20%,#fffaee 0%,#f1dfc8 44%,#ddbe95 100%)}
.mtt13-map-static svg{width:100%;height:100%;min-height:395px;display:block}
.mtt13-map-watermark{position:absolute;top:24px;left:26px;color:#91623e;font-weight:800;font-size:.72rem;letter-spacing:.16em;z-index:2}
.mtt13-map-label{position:absolute;bottom:15px;left:20px;right:20px;background:#fff9efe8;padding:9px 13px;border-radius:8px;color:#684e39;font-size:.79rem!important;line-height:1.5!important}
.mtt13-map-simple{display:flex;align-items:center;justify-content:center;min-height:405px;color:#744d30;font-size:1.35rem;text-align:center;padding:20px}
.mtt13-google-map{width:100%;height:430px;display:block;border:0}
.mtt13-route-aside{min-width:0;display:flex;flex-direction:column;gap:14px;padding:28px;background:#fff;border-radius:18px;border:1px solid var(--mtt13-border);box-shadow:0 12px 27px rgba(76,38,18,.06)}
.mtt13-route-aside h3{font-family:Georgia,serif;font-size:1.65rem;margin:0}
.mtt13-route-aside ol{list-style:none;padding:0;margin:0 0 12px;max-height:440px;overflow-y:auto}
.mtt13-route-aside li{display:flex;gap:13px;align-items:center;padding:8px 0;border-bottom:1px solid #f1e6d9;font-size:.97rem}
.mtt13-route-aside li span{font-size:.79rem;font-weight:900;color:var(--mtt13-clay)}
.mtt13-route-button{display:block!important;text-align:center;margin-top:auto;padding:14px!important}
.mtt13-map-legs{display:flex;flex-wrap:wrap;gap:12px}
.mtt13-map-legs p{width:100%;margin:0;color:#736052;font-size:.85rem}
.mtt13-map-legs a{color:#a04616;font-weight:750;font-size:.9rem}
.mtt13-route-note{font-size:.88rem;margin:12px 0;color:#80664d}
/* Editorial services: full-width intro without huge blank space and undersized sidebar */
.mtt13-service-overview{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,.78fr);gap:clamp(24px,3.5vw,68px);padding-top:75px!important;padding-bottom:75px!important;align-items:start}
.mtt13-service-lead{min-width:0}.mtt13-service-lead h2{font:700 clamp(2rem,3vw,3.1rem)/1.15 Georgia,serif;margin:14px 0 24px;color:var(--mtt13-ink)}
.mtt13-service-lead p{font-size:1.1rem!important;line-height:1.85!important;color:#574637;margin:0 0 21px}
.mtt13-service-lead p.mtt13-lead{font-size:1.35rem!important;line-height:1.6!important;color:#985021;font-weight:530}
.mtt13-service-facts{padding:clamp(26px,2.8vw,44px);border:1px solid #e6c6a5;border-radius:20px;background:linear-gradient(145deg,#fff5e6,#f5e1c6);box-shadow:0 17px 40px rgba(75,36,13,.09);min-width:0}
.mtt13-service-facts h3{font-size:clamp(1.7rem,2vw,2.25rem);line-height:1.2;font-family:Georgia,serif;margin:15px 0 22px;color:var(--mtt13-ink)}
.mtt13-service-facts ul{padding:0 0 0 22px;margin:0 0 28px;color:#604a38;line-height:1.75}.mtt13-service-facts li{margin:0 0 10px}
.mtt13-text-section,.mtt13-routes,.mtt13-activity-section,.mtt13-vehicle-options,.mtt13-faq{padding-top:62px!important;padding-bottom:62px!important}
.mtt13-text-section h2,.mtt13-routes h2,.mtt13-activity-section h2,.mtt13-vehicle-options h2,.mtt13-faq h2{font-family:Georgia,serif;font-size:clamp(1.9rem,3vw,2.9rem)!important;line-height:1.22;margin:12px 0 25px;color:var(--mtt13-ink)}
.mtt13-text-section>p,.mtt13-routes>p,.mtt13-activity-section>p{font-size:1.08rem!important;line-height:1.85!important;max-width:1050px;margin:0 0 19px;color:#574737}
.mtt13-routes,.mtt13-vehicle-options{background:linear-gradient(140deg,#fff7eb,#f8ecdd);border-top:1px solid #e9d3bc;border-bottom:1px solid #e9d3bc}
.mtt13-route-cards,.mtt13-option-grid,.mtt13-activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:28px 0 0}
.mtt13-route-card,.mtt13-option-grid article,.mtt13-activity-grid article{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:clamp(23px,2vw,32px);border:1px solid #e7cdb1;border-radius:17px;background:#fffdf8;box-shadow:0 12px 28px rgba(64,36,16,.07)}
.mtt13-route-card:hover,.mtt13-option-grid article:hover,.mtt13-activity-grid article:hover{border-color:#c7834d;box-shadow:0 17px 37px rgba(64,36,16,.12)}
.mtt13-card-index,.mtt13-option-grid article>span,.mtt13-trek-number{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:#da691e;color:white;font-size:.83rem;font-weight:800;letter-spacing:.05em;margin-bottom:20px}
.mtt13-route-card h3,.mtt13-option-grid h3,.mtt13-activity-grid h3{font-family:Georgia,serif;font-size:1.5rem;line-height:1.3;margin:0 0 13px;color:var(--mtt13-ink)}
.mtt13-route-card p,.mtt13-option-grid p,.mtt13-activity-grid p{font-size:1rem;line-height:1.75;color:#69513d;margin:0 0 19px}
.mtt13-route-card>a{display:inline-flex;margin-top:auto;color:#af4a13!important;font-weight:850;min-height:42px;align-items:center;text-decoration:underline;text-underline-offset:5px}
.mtt13-smallcaps{font-size:.77rem!important;font-weight:850;letter-spacing:.1em;text-transform:uppercase;color:#b15a25!important}
.mtt13-trek-sections{display:grid;gap:20px;margin-top:32px}
.mtt13-trek-sections article{display:grid;grid-template-columns:60px minmax(0,1fr);gap:24px;padding:28px;border:1px solid #e8ceb2;border-left:4px solid #d36218;background:#fff;border-radius:18px;box-shadow:0 12px 27px #61300f0b}
.mtt13-trek-number{width:56px;height:56px;margin:0}
.mtt13-trek-sections h3{font-family:Georgia,serif;font-size:1.58rem;line-height:1.36;margin:5px 0 13px}.mtt13-trek-sections p{color:#5d4939;line-height:1.8;font-size:1.04rem;margin:0}
.mtt13-faq details{background:white;border:1px solid #e8d2bd;border-radius:12px;margin-bottom:10px;padding:15px 19px}
.mtt13-faq summary{cursor:pointer;font-size:1.1rem;font-weight:720;color:var(--mtt13-ink)}
.mtt13-faq details p{line-height:1.7;color:#6c5645}
.mtt13-service-last-cta{padding-top:35px!important;padding-bottom:50px!important}
/* Footer's social links are intentional visual elements, not raw borders. */
.mtt-v8-footer .mtt-v8-socials{display:flex!important;flex-wrap:wrap;gap:13px;align-items:center;margin-top:25px}
.mtt-v8-footer .mtt-v8-socials a{min-height:48px;display:inline-flex!important;align-items:center;gap:10px;border:1px solid rgba(253,217,169,.44)!important;background:rgba(255,240,216,.07)!important;border-radius:11px!important;padding:11px 18px!important;color:#fff8e9!important;text-decoration:none!important;font-size:.95rem!important;font-weight:750;transition:.2s ease}
.mtt-v8-footer .mtt-v8-socials a:hover{background:#fff1dc!important;color:#6b3113!important;transform:translateY(-2px)}
.mtt-v8-footer .mtt-v8-socials svg{width:20px;height:20px;flex-shrink:0}
/* Contact form: verification field intentionally has no sample answer/placeholder. */
.mtt-verification-row input::placeholder{color:#8f7c6b}
@media(max-width:1100px){.mtt13-service-overview{grid-template-columns:1fr}.mtt13-route-cards,.mtt13-option-grid,.mtt13-activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mtt13-map-layout{grid-template-columns:1fr}.mtt13-route-aside ol{max-height:unset}}
@media(max-width:820px){.mtt13-gallery-grid,.mtt12-gallery{grid-template-columns:1fr 1fr!important;grid-auto-rows:auto!important}.mtt13-gallery-grid figure:first-child,.mtt12-gallery figure:first-child{grid-column:span 2!important;grid-row:auto!important}.mtt13-gallery-grid figure:nth-child(4),.mtt12-gallery figure:nth-child(4){grid-column:span 1!important}.mtt13-gallery-grid img,.mtt12-gallery img{height:230px!important;min-height:0!important}.mtt13-gallery-grid figure:first-child img,.mtt12-gallery figure:first-child img{height:320px!important;min-height:0!important}.mtt10-cards,.mtt12-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:620px){.mtt10-cards,.mtt12-cards,.mtt10-home-services-grid,.mtt10-home-medina .mtt10-cards,.mtt10-home-daytrips .mtt10-cards,.mtt13-route-cards,.mtt13-option-grid,.mtt13-activity-grid{grid-template-columns:1fr!important}.mtt10-card{width:100%!important;max-width:100%!important}.mtt10-card-inner{padding:23px!important}.mtt10-card-image{aspect-ratio:16/9!important}.mtt10-card-image img{aspect-ratio:16/9!important}.mtt13-gallery-grid,.mtt12-gallery{grid-template-columns:1fr 1fr!important;gap:10px!important}.mtt13-gallery-grid figure:first-child,.mtt12-gallery figure:first-child{grid-column:span 2!important}.mtt13-gallery-grid figure:first-child img,.mtt12-gallery figure:first-child img{height:240px!important}.mtt13-gallery-grid figure:not(:first-child) img,.mtt12-gallery figure:not(:first-child) img{height:155px!important}.mtt13-gallery-grid figcaption,.mtt12-gallery figcaption{font-size:.72rem!important;padding:17px 10px 9px!important}.mtt13-service-overview{padding-top:42px!important;padding-bottom:42px!important}.mtt13-service-facts{padding:24px}.mtt13-text-section,.mtt13-routes,.mtt13-activity-section,.mtt13-vehicle-options,.mtt13-faq{padding-top:42px!important;padding-bottom:42px!important}.mtt13-map-diagram,.mtt13-map-static{min-height:300px}.mtt13-map-static svg{min-height:300px}.mtt13-map-label{position:static!important;margin:0 10px 12px}.mtt13-route-aside{padding:21px}.mtt13-trek-sections article{grid-template-columns:44px 1fr;gap:12px;padding:18px}.mtt13-trek-number{width:40px;height:40px}.mtt-v8-footer .mtt-v8-socials a{flex:1 1 135px;justify-content:center}.mtt10-itinerary-step{grid-template-columns:44px minmax(0,1fr)!important;padding:19px 14px!important}.mtt10-itinerary-step h3{font-size:1.25rem!important;overflow-wrap:break-word!important}}
@media(prefers-reduced-motion:reduce){.mtt10-card,.mtt10-card img,.mtt-v8-socials a{transition:none!important}}

/* Contextual labels and booking actions in all cards. */
.mtt10-card-inner:before,.mtt10-home-services .mtt10-card-inner:before,.mtt10-home-daytrips .mtt10-card-inner:before,.mtt10-home-medina .mtt10-card-inner:before{display:none!important;content:none!important}
.mtt13-card-tag{display:block;color:#9c4a1e;letter-spacing:.13em;font-size:.7rem;font-weight:850;line-height:1.5;margin:0 0 3px}
/* Legacy gallery components receive the same premium layout, when still rendered. */
.mtt10-gallery,.mtt-v8-gallery,.mtt-v7-gallery{display:grid!important;grid-template-columns:1.25fr 1fr 1fr!important;gap:14px!important;max-width:100%!important;min-width:0!important}
.mtt10-gallery figure,.mtt-v8-gallery figure,.mtt-v7-gallery figure{border-radius:16px!important;overflow:hidden!important;min-width:0!important;border:1px solid var(--mtt13-border)!important;background:#fff!important;box-shadow:0 12px 28px rgba(76,38,18,.08)!important;margin:0!important}
.mtt10-gallery img,.mtt-v8-gallery img,.mtt-v7-gallery img{width:100%!important;height:225px!important;object-fit:cover!important;display:block!important}
.mtt10-gallery figcaption,.mtt-v8-gallery figcaption,.mtt-v7-gallery figcaption{padding:13px 15px!important;color:#754b32!important;font-size:.85rem!important;font-weight:720!important}
@media(max-width:760px){.mtt10-gallery,.mtt-v8-gallery,.mtt-v7-gallery{grid-template-columns:1fr 1fr!important}.mtt10-gallery figure:first-child,.mtt-v8-gallery figure:first-child,.mtt-v7-gallery figure:first-child{grid-column:span 2}.mtt10-gallery figure:first-child img,.mtt-v8-gallery figure:first-child img,.mtt-v7-gallery figure:first-child img{height:245px!important}}
