.elementor-14 .elementor-element.elementor-element-8218104{--display:flex;--min-height:831px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--overlay-opacity:0.5;}.elementor-14 .elementor-element.elementor-element-8218104:not(.elementor-motion-effects-element-type-background), .elementor-14 .elementor-element.elementor-element-8218104 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#272525;background-image:url("https://riad-dahab.com/wp-content/uploads/2025/09/Gemini_Generated_Image_rtiinjrtiinjrtii.png");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-14 .elementor-element.elementor-element-8218104::before, .elementor-14 .elementor-element.elementor-element-8218104 > .elementor-background-video-container::before, .elementor-14 .elementor-element.elementor-element-8218104 > .e-con-inner > .elementor-background-video-container::before, .elementor-14 .elementor-element.elementor-element-8218104 > .elementor-background-slideshow::before, .elementor-14 .elementor-element.elementor-element-8218104 > .e-con-inner > .elementor-background-slideshow::before, .elementor-14 .elementor-element.elementor-element-8218104 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#000000;--background-overlay:'';}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-14 .elementor-element.elementor-element-b54bb7f{padding:200px 0px 0px 0px;}.elementor-14 .elementor-element.elementor-element-b54bb7f .elementor-heading-title{font-family:"Hagrid Text", Sans-serif;font-size:40px;font-weight:500;color:#DEAD17;}.elementor-14 .elementor-element.elementor-element-c98ca3b{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-14 .elementor-element.elementor-element-b021eb2{width:var( --container-widget-width, 65% );max-width:65%;--container-widget-width:65%;--container-widget-flex-grow:0;font-family:"Montserrat", Sans-serif;font-size:20px;font-weight:500;color:#F6ECDF;}.elementor-14 .elementor-element.elementor-element-4b10fb4{--display:flex;--min-height:429px;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor-14 .elementor-element.elementor-element-4b10fb4:not(.elementor-motion-effects-element-type-background), .elementor-14 .elementor-element.elementor-element-4b10fb4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F6ECDF;}.elementor-14 .elementor-element.elementor-element-648d844{--display:flex;--min-height:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-14 .elementor-element.elementor-element-5157e12{text-align:center;}.elementor-14 .elementor-element.elementor-element-5157e12 .elementor-heading-title{font-family:"Hagrid Text", Sans-serif;font-size:40px;font-weight:500;color:#000000;}.elementor-14 .elementor-element.elementor-element-7e9bec5{--display:flex;}.elementor-14 .elementor-element.elementor-element-518e196{z-index:1;}.elementor-14 .elementor-element.elementor-element-95aacfb{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-14 .elementor-element.elementor-element-95aacfb:not(.elementor-motion-effects-element-type-background), .elementor-14 .elementor-element.elementor-element-95aacfb > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5EBDF;}.elementor-14 .elementor-element.elementor-element-a4f3bdf{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-14 .elementor-element.elementor-element-a4f3bdf .elementor-swiper-button.elementor-swiper-button-prev, .elementor-14 .elementor-element.elementor-element-a4f3bdf .elementor-swiper-button.elementor-swiper-button-next{color:#DFAD18;}.elementor-14 .elementor-element.elementor-element-a4f3bdf .elementor-swiper-button.elementor-swiper-button-prev svg, .elementor-14 .elementor-element.elementor-element-a4f3bdf .elementor-swiper-button.elementor-swiper-button-next svg{fill:#DFAD18;}.elementor-14 .elementor-element.elementor-element-a4f3bdf .swiper-pagination-bullet:not(.swiper-pagination-bullet-active){background:#DFAD18;opacity:1;}.elementor-14 .elementor-element.elementor-element-a4f3bdf .swiper-pagination-bullet{background:#DFAD18;}.elementor-14 .elementor-element.elementor-element-a4f3bdf .elementor-image-carousel-wrapper .elementor-image-carousel .swiper-slide-image{border-style:none;border-radius:10px 10px 10px 10px;}.elementor-14 .elementor-element.elementor-element-14ccd66{z-index:4;}.elementor-14 .elementor-element.elementor-element-280c0d0{z-index:3;}.elementor-14 .elementor-element.elementor-element-e95efb7{z-index:3;}.elementor-14 .elementor-element.elementor-element-e9d1353{z-index:20;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-14 .elementor-element.elementor-element-648d844{--width:100%;}.elementor-14 .elementor-element.elementor-element-95aacfb{--content-width:90%;}}@media(max-width:767px){.elementor-14 .elementor-element.elementor-element-8218104{--min-height:587px;--justify-content:center;--padding-top:100px;--padding-bottom:0px;--padding-left:30px;--padding-right:30px;}.elementor-14 .elementor-element.elementor-element-b54bb7f .elementor-heading-title{font-size:20px;}.elementor-14 .elementor-element.elementor-element-b021eb2{padding:0px 0px 100px 0px;--container-widget-width:375px;--container-widget-flex-grow:0;width:var( --container-widget-width, 375px );max-width:375px;font-size:18px;}.elementor-14 .elementor-element.elementor-element-5157e12 .elementor-heading-title{font-size:30px;}}/* Start custom CSS for html, class: .elementor-element-c98ca3b *//* ===== Hero Title Base (Desktop) ===== */
.hero_title p {
  font-family: "Hagrid Text", sans-serif;
  font-weight: 400;
  font-size: 80px;
  line-height: 78px;
  color: #f6ecdf;
  margin: 0;
  padding: 0;
  text-align: left;
}

.hero_title .highlight {
  color: #DEAD17;
}

/* ===== Tablets (≤1024px) ===== */
@media (max-width: 1024px) {
  .hero_title p {
    font-size: 50px;
    line-height: 64px;
  }
}

/* ===== Mobiles (≤768px) ===== */
@media (max-width: 768px) {
  .hero_title p {
    font-size: 40px;
    line-height: 46px;
    text-align: center; /* optional: center text on smaller screens */
  }
}

/* ===== Very Small Phones (≤480px) ===== */
@media (max-width: 480px) {
  .hero_title p {
    font-size: 28px;
    line-height: 34px;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8218104 *//* Hero Section with Blurred Circle and Decorations */
.herosection {
    position: relative;
    background: linear-gradient(135deg, #f3eadd 0%,  100%);
    overflow: hidden;
    display: flex;
    align-items: center;
    padding: 0 5%;
}

/* Large Blurred Circle on Right Side */
.herosection::before {
    content: '';
    position: absolute;
    top: 10%;
    right: -15%;
    width: 600px;
    height: 600px;
    background: linear-gradient(135deg, #DEAD17, #DEAD17, #DEAD17);
    border-radius: 50%;
    filter: blur(220px);
    opacity: 0.6;
    animation: floatCircle 6s ease-in-out infinite;
}

/* Secondary Smaller Blurred Circle */
.herosection::after {
    content: '';
    position: absolute;
    bottom: 15%;
    right: 5%;
    width: 300px;
    height: 300px;
    background: linear-gradient(45deg, #DEAD17, #DEAD17);
    border-radius: 50%;
    filter: blur(80px);
    opacity: 0.4;
    animation: floatCircle 8s ease-in-out infinite reverse;
}

/* Decorative Elements Container */
.herosection-decorations {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

/* Moroccan Pattern Decoration */
.decoration-pattern {
    position: absolute;
    top: 20%;
    left: 8%;
    width: 150px;
    height: 150px;
    opacity: 0.1;
    background-image: 
        radial-gradient(circle at 50% 50%, #DEAD17 2px, transparent 2px),
        radial-gradient(circle at 25% 25%, #DEAD17 1px, transparent 1px),
        radial-gradient(circle at 75% 75%, #DEAD17 1.5px, transparent 1.5px);
    background-size: 30px 30px, 15px 15px, 20px 20px;
    animation: rotatePattern 20s linear infinite;
    z-index: -1;
}

/* Geometric Lines */
.decoration-lines {
    position: absolute;
    top: 60%;
    left: 12%;
    width: 200px;
    height: 100px;
    opacity: 0.15;
}

.decoration-lines::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100px;
    height: 2px;
    background: linear-gradient(90deg, #a45e45, transparent);
    transform: rotate(-15deg);
}

.decoration-lines::after {
    content: '';
    position: absolute;
    bottom: 20px;
    left: 20px;
    width: 80px;
    height: 1px;
    background: linear-gradient(90deg, transparent, #c7956b, transparent);
    transform: rotate(25deg);
}

/* Subtle Dots Decoration */
.decoration-dots {
    position: absolute;
    bottom: 25%;
    left: 20%;
    width: 120px;
    height: 120px;
    opacity: 0.2;
}

.decoration-dots::before {
    content: '';
    position: absolute;
    width: 6px;
    height: 6px;
    background: #a45e45;
    border-radius: 50%;
    box-shadow: 
        30px 20px 0 #c7956b,
        60px 5px 0 #8b4a36,
        15px 50px 0 #a45e45,
        45px 40px 0 #d4a574,
        75px 65px 0 #c7956b;
}

/* Top Right Accent */
.decoration-accent {
    position: absolute;
    top: 15%;
    right: 25%;
    width: 80px;
    height: 80px;
    border: 2px solid #a45e45;
    border-radius: 50%;
    opacity: 0.3;
    transform: rotate(45deg);
    animation: rotateAccent 15s linear infinite;
}

.decoration-accent::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 40px;
    height: 40px;
    border: 1px solid #c7956b;
    border-radius: 50%;
    transform: translate(-50%, -50%) rotate(-45deg);
}

/* Content Container */
.herosection-content {
    position: relative;
    max-width: 800px;
}

/* Floating Animation */
@keyframes floatCircle {
    0%, 100% { transform: translateY(0px) scale(1); }
    50% { transform: translateY(-30px) scale(1.05); }
}

@keyframes rotatePattern {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

@keyframes rotateAccent {
    0% { transform: rotate(45deg); }
    100% { transform: rotate(405deg); }
}

/* Responsive Design */
@media (max-width: 1024px) {
    .herosection::before {
        width: 500px;
        height: 500px;
        right: -20%;
    }
    
    .herosection::after {
        width: 250px;
        height: 250px;
    }
}

@media (max-width: 768px) {
    .herosection {
        padding: 0 4%;
        text-align: center;
    }
    
    .herosection::before {
        width: 400px;
        height: 400px;
        right: -25%;
        top: 5%;
    }
    
    .herosection::after {
        width: 200px;
        height: 200px;
        bottom: 10%;
    }
    
    .decoration-pattern,
    .decoration-lines,
    .decoration-dots,
    .decoration-accent {
        opacity: 0.05;
        transform: scale(0.7);
    }
    
    .herosection-content {
        max-width: 100%;
    }
}

@media (max-width: 480px) {
    .herosection::before {
        width: 300px;
        height: 300px;
        right: -30%;
    }
    
    .herosection::after {
        width: 150px;
        height: 150px;
    }
    
    .decoration-pattern,
    .decoration-lines,
    .decoration-dots,
    .decoration-accent {
        display: none;
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-518e196 *//* MotoPress Hotel Booking Form - Exact Maquette Styling */

/* Container/Section */
.mphb_sc_search-form {
    max-width: 1280px;
    margin: 0 auto;
    padding: 24px 32px;
    background: rgba(255, 255, 255, 0.75);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(0, 0, 0, 0.06);
    border-radius: 24px;
    box-shadow: 0 16px 30px rgba(0, 0, 0, 0.08);
    display: grid;
    grid-template-columns: 1fr 1fr 1fr auto;
    gap: 24px;
    align-items: end;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

/* Hide required fields tip and children section */
.mphb-required-fields-tip,
.mphb_sc_search-children {
    display: none !important;
}

/* Field containers */
.mphb_sc_search-check-in-date,
.mphb_sc_search-check-out-date,
.mphb_sc_search-adults {
    margin: 0;
    position: relative;
}

/* Labels - Group titles */
.mphb_sc_search-check-in-date label,
.mphb_sc_search-check-out-date label,
.mphb_sc_search-adults label {
    display: block;
    font-size: 18px;
    font-weight: 600;
    color: #111;
    margin-bottom: 8px;
    font-size: 0; /* Hide original text */
}

.mphb_sc_search-check-in-date label::before {
    content: "Dès";
    font-size: 18px;
    font-weight: 600;
    color: #111;
}

.mphb_sc_search-check-out-date label::before {
    content: "À";
    font-size: 18px;
    font-weight: 600;
    color: #111;
}

.mphb_sc_search-adults label::before {
    content: "Nombre de personne";
    font-size: 18px;
    font-weight: 600;
    color: #111;
}

/* Input fields - Pills style */
.mphb_sc_search-form input[type="text"],
.mphb_sc_search-form select {
    width: 100%;
    height: 56px;
    padding: 16px 56px 16px 20px;
    border: 1px solid #E5E7EB;
    border-radius: 9999px;
    background: #FFFFFF;
    font-size: 16px;
    color: #111;
    outline: none;
    transition: border-color 0.2s, box-shadow 0.2s, background-color 0.2s;
    font-family: inherit;
    appearance: none;
}

/* Placeholder styling */
.mphb_sc_search-form input[type="text"]::placeholder {
    color: #6B7280;
    font-size: 16px;
}

/* Update placeholders */
.mphb_sc_search-check-in-date input::placeholder {
    content: "Choisir un date";
}

.mphb_sc_search-check-out-date input::placeholder {
    content: "Choisir un date";  
}

/* Select styling */
.mphb_sc_search-form select {
    color: #6B7280;
    cursor: pointer;
    background-image: none;
}

.mphb_sc_search-form select option {
    color: #111;
}

.mphb_sc_search-form select option:first-child {
    color: #6B7280;
}

/* Add custom select text for adults */
.mphb_sc_search-adults select option[value="1"] {
    display: none;
}

.mphb_sc_search-adults select::before {
    content: "Choisir une chambre";
    color: #6B7280;
}

/* Focus states */
.mphb_sc_search-form input[type="text"]:focus,
.mphb_sc_search-form select:focus {
    border: 2px solid #E9B79E;
    box-shadow: 0 0 0 3px rgba(196, 122, 87, 0.15);
    background: #FFFFFF;
}

/* Hover states */
.mphb_sc_search-form input[type="text"]:hover,
.mphb_sc_search-form select:hover {
    background: #FCFCFC;
    border-color: #D1D5DB;
}

/* Icons positioned to the right */
.mphb_sc_search-check-in-date::after,
.mphb_sc_search-check-out-date::after {
    content: "";
    position: absolute;
    right: 20px;
    bottom: 18px;
    width: 20px;
    height: 20px;
    background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' fill='NONE' viewBox='0 0 24 24' stroke='%23DEAD17'><path stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z'/></svg>");
    background-repeat: no-repeat;
    background-size: contain;
    pointer-events: none;
}

.mphb_sc_search-adults::after {
    content: "";
    position: absolute;
    right: 20px;
    bottom: 18px;
    width: 20px;
    height: 20px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23DEAD17'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M16 7a4 4 0 11-8 0 4 4 0 018 0zM12 14a7 7 0 00-7 7h14a7 7 0 00-7-7z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    pointer-events: none;
}

/* Submit button wrapper */
.mphb_sc_search-submit-button-wrapper {
    margin: 0;
    align-self: end;
}

/* Search button - Capsule style */
.mphb_sc_search-form .button,
.mphb_sc_search-form input[type="submit"] {
    height: 56px;
    padding: 0 32px;
    background: #000;
    color: #FFF;
    border: none;
    border-radius: 9999px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.2s, box-shadow 0.2s, transform 0.1s;
    white-space: nowrap;
    font-family: inherit;
}

/* Button hover state */
.mphb_sc_search-form .button:hover,
.mphb_sc_search-form input[type="submit"]:hover {
    background: #DEAD17;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    transform: translateY(-1px);
}

/* Button focus state */
.mphb_sc_search-form .button:focus,
.mphb_sc_search-form input[type="submit"]:focus {
    outline: none;
    box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.15);
}

/* Button disabled state */
.mphb_sc_search-form .button:disabled,
.mphb_sc_search-form input[type="submit"]:disabled {
    background: #E5E7EB;
    color: #9CA3AF;
    cursor: not-allowed;
}

/* Remove line breaks */
.mphb_sc_search-form br {
    display: none;
}

/* Tablet responsive (768px - 1024px) */
@media (max-width: 1024px) and (min-width: 768px) {
    .mphb_sc_search-form {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 1fr 1fr;
        gap: 20px;
        padding: 20px 24px;
    }
    
    .mphb_sc_search-submit-button-wrapper {
        grid-column: 1 / -1;
    }
    
    .mphb_sc_search-form .button,
    .mphb_sc_search-form input[type="submit"] {
        width: 100%;
    }
}

/* Mobile responsive (<768px) */
@media (max-width: 767px) {
    .mphb_sc_search-form {
        grid-template-columns: 1fr;
        gap: 16px;
        padding: 16px 20px;
        border-radius: 18px;
    }
    
    .mphb_sc_search-form .button,
    .mphb_sc_search-form input[type="submit"] {
        width: 100%;
        margin-top: 8px;
    }
    
    .mphb_sc_search-check-in-date::after,
    .mphb_sc_search-check-out-date::after,
    .mphb_sc_search-adults::after {
        right: 20px;
        bottom: 18px;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-1d42347 */.about-riad {
    /* put this section on an image? keep text readable */
    /* Example overlay context (optional):
    position: relative; isolation: isolate;
    }
    .about-riad::before {
      content: ""; position: absolute; inset: 0;
      background: rgba(0,0,0,.35); z-index: -1;
    } */
    padding: 100px 20px;
    text-align: center;
    color: #ffffff;
  }

  .about-riad__container {
    max-width: 1200px;
    margin: 0 auto;
  }

  /* Eyebrow — Hagrid Text Regular 24 / White */
  .about-riad__eyebrow {
    font-family: "Hagrid Text";
    font-weight: 400;
    font-size: 24px;
    line-height: 1.2;
    color: #000;
    margin: 0 0 12px 0;
  }

  /* Title — Hagrid Text Bold 35 / #DEAD17 */
  .about-riad__title {
    font-family: "Hagrid Text";
    font-weight: 700;
    font-size: 35px;
    line-height: 1.15;
    color: #DEAD17;
    margin: 0 0 20px 0;
  }

  /* Body — NewBlack Typeface 22 (substituted with Manrope) / White */
  .about-riad__body {
    font-family: 'Montserrat';
    font-weight: 400;          /* “Mixed” → regular body text */
    font-size: 22px;
    line-height: 1.6;
    color: #000;
    margin: 0 auto 14px auto;
    max-width: 1100px;
  }

  /* Responsive polish */
  @media (max-width: 992px) {
    .about-riad__title { font-size: 32px; }
    .about-riad__body  { font-size: 20px; }
  }
  @media (max-width: 600px) {
    .about-riad__eyebrow { font-size: 20px; }
    .about-riad__title   { font-size: 28px; }
    .about-riad__body    { font-size: 18px; }
  }/* End custom CSS */
/* Start custom CSS for image-carousel, class: .elementor-element-a4f3bdf */.swiper-wrapper{
    gap:30px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-14ccd66 */:root{

  --text-main: #0A0A0A;
  --text-muted: #2E2E2E;
  --brand-accent: #DEAD17;
  --gold-title: #DEAD17;
  --radius: 22px;
  --gap-xl: 28px;
  --gap-lg: 22px;
  --gap-md: 16px;
  --shadow: 0 10px 30px rgba(0,0,0,.15);
}

.rooms-section{
  position: relative;
  padding: 72px 24px;
  color: var(--text-main);
  background:
    radial-gradient(1200px 600px at 15% 20%, rgba(255,255,255,.45), rgba(255,255,255,0)),
    var(--bg-texture), #EEDFC7;
  background-size: cover;
  background-position: center;
  border-radius: 24px;
}

.rooms-wrap{

  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: var(--gap-xl);
  align-items: center;
}

.eyebrow{
  font-family: 'Hagrid text';
  font-weight: 400;
  font-size: 26px;
  line-height: 1.25;
  color: var(--brand-accent);
  margin: 0 0 8px 0;
}

.title{
  font-family: 'hagrid text';
  font-weight: 800;
  font-size: 46px;
  line-height: 1.1;
  letter-spacing: .2px;
  margin: 0 0 18px 0;
  color: #DEAD17
}

.desc{
  font-family: 'Montserrat';
  font-weight: 400;
  font-size: 22px;
  line-height: 1.7;
  color: var(--text-muted);
  margin: 0;
  max-width: 820px;
}

.rooms-collage{
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  grid-template-rows: 1fr 1fr;
  gap: var(--gap-lg);
}

.rooms-collage .img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  display: block;
}

.rooms-collage .img-large{
  grid-row: 1 / span 2;
  grid-column: 1;
}

@media (max-width: 1100px){
  .title{ font-size: 48px; }
  .desc { font-size: 20px; }
}

@media (max-width: 900px){
  .rooms-wrap{
    grid-template-columns: 1fr;
    gap: var(--gap-xl);
  }
  .rooms-collage{
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 220px 220px;
  }
  .rooms-collage .img-large{ grid-row: 1 / span 2; }
}

@media (max-width: 560px){
  .eyebrow{ font-size: 20px; }
  .title{ font-size: 36px; }
  .desc { font-size: 18px; }
  .rooms-collage{
    grid-template-columns: 1fr;
    grid-template-rows: 220px 180px 180px;
  }
  .rooms-collage .img-large{ grid-row: 1; grid-column: 1; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-280c0d0 */:root{
    --text-main:#0A0A0A;
    --text-muted:#2E2E2E;
    --brand-accent:#DEAD17;
    --radius:22px;
    --gap-xl:28px;
    --gap-lg:22px;
    --shadow:0 10px 30px rgba(0,0,0,.12);
  }

  .rooms-highlights{
    padding:72px 24px;
    background:
      radial-gradient(1200px 600px at 15% 20%, rgba(255,255,255,.45), rgba(255,255,255,0)),
      var(--bg-texture), #EEDFC7;
    background-size:cover;
    background-position:center;
  }

  .rh-wrap{
    margin:0 auto;
    display:grid;
    grid-template-columns:1.4fr 1fr;
    gap:var(--gap-xl);
    align-items:center;
  }

  .rh-gallery{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:var(--gap-lg);
  }
  .rh-img{
    width:100%;
    height:320px;
    object-fit:cover;
    border-radius:var(--radius);
    box-shadow:var(--shadow);
    display:block;
  }

  .rh-right{ color:#DEAD17; }
  .rh-title{
    font-family:Hagrid text;
    font-weight:700;
    font-size:35px;
    line-height:1.15;
    margin:0 0 18px 0;
    padding-bottom: 40px;
    color:#DEAD17;
  }

  .rh-list{
    list-style:none;
    padding:0;
    margin:0 0 26px 0;
    display:grid;
    gap:16px;
  }
  .rh-list li{
    display:flex;
    align-items:center;
    gap:14px;
    font-family:'Montserrat';
    font-size:22px;
    line-height:1.5;
    color:var(--brand-accent);
  }
  .rh-ico{
    width:28px;
    height:28px;
    display:inline-flex;
  }
  .rh-ico svg{
    width:100%;
    height:100%;
    fill:var(--brand-accent);
  }

  .rh-btn{
    display:inline-block;
    font-family:'Montserrat';
    font-weight:600;
    font-size:18px;
    padding:14px 24px;
    border-radius:999px;
    background:#DEAD17;
    color:#f6ecdf!important;
    text-decoration:none;
    box-shadow:0 6px 20px rgba(0,0,0,.08) inset, 0 2px 10px rgba(0,0,0,.06);
    transition:transform .2s ease, background .2s ease;
  }
  .rh-btn:hover{ transform:translateY(-1px); background:#eed622; 
      color: #000;
  }

  @media (max-width:1100px){
    .rh-title{ font-size:38px; }
    .rh-img{ height:280px; }
  }
  @media (max-width:900px){
    .rh-wrap{ grid-template-columns:1fr; }
    .rh-right{ order:2; }
    .rh-gallery{ order:1; }
  }
  @media (max-width:560px){
    .rh-title{ font-size:30px; }
    .rh-list li{ font-size:18px; }
    .rh-img{ height:220px; }
  }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e95efb7 */:root{
    --card:#ede0d3;
    --text:#0A0A0A;
    --muted:#2E2E2E;
    --accent:#DEAD17;
    --radius:18px;
    --shadow:0 10px 24px rgba(0,0,0,.08);
  }

  .services{
    padding:64px 20px 76px;
    color:var(--text);
    font-family: 'Montserrat';
  }

  .srv-head{
    margin:0 auto 28px;
    display:grid;
    grid-template-columns:1.1fr .9fr;
    gap:24px;
    align-items:end;
  }

  .srv-eyebrow{
    font-family: 'hagrid text';
    font-weight:500;
    font-size:20px;
    color:#DEAD17;
    margin:0 0 6px 0;
  }

  .srv-title{
    font-family: 'hagrid text';
    font-weight:800;
    font-size:35px;
    line-height:1.1;
    margin:0;
    color: #DEAD17
  }

  .srv-intro{
      font-family: 'Montserrat';
    margin:0;
    font-size:18px;
    line-height:1.7;
    color:var(--muted);
  }

  .srv-grid{

    margin:22px auto 0;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:26px;
  }

  .srv-card{
    background:var(--card);
    border-radius:24px;
    padding:26px 26px 28px;
    box-shadow:var(--shadow);
    display:grid;
    grid-template-columns:64px 1fr;
    gap:18px 18px;
    align-items:start;
  }

  .srv-ico{
    width:64px; height:64px;
    border-radius:16px;
    display:flex; align-items:center; justify-content:center;
  }

  .srv-card-title{
    grid-column:2;
    font-family:hagrid text, sans-serif;
    font-weight:700;
    font-size:20px;
    color:var(--accent);
    margin:8px 0 4px;
  }

  .srv-card-text{
      font-family: 'Montserrat';
    grid-column:1 / -1;
    margin:0 0 2px 0;
    font-size:18px;
    line-height:1.75;
    color:var(--muted);
  }

  @media (max-width:1024px){
    .srv-title{ font-size:38px; }
  }
  @media (max-width:860px){
    .srv-head{
      grid-template-columns:1fr;
      gap:8px;
    }
    .srv-grid{
      grid-template-columns:1fr;
    }
  }
  @media (max-width:520px){
    .srv-title{ font-size:30px; }
    .srv-card{ grid-template-columns:56px 1fr; }
    .srv-card-title{ font-size:20px; }
    .srv-card-text{ font-size:16px; }
  }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e9d1353 */:root{
    --bg: #F4EADF;
    --text: #0A0A0A;
    --muted:#2E2E2E;
    --accent:#DEAD17;
    --radius:24px;
    --map-img: url('/wp-content/uploads/2025/09/image-86-scaled.png');
  }

  .loc{
    padding: 56px 20px 72px;
    color: var(--text);
    font-family: Manrope, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  }
  .loc-wrap{

    margin: 0 auto;
  }

  .loc-eyebrow{
    margin: 0 0 6px 0;
    font-family: hagrid text;
    font-weight: 500;
    font-size: 22px;
    color: var(--accent);
  }
  .loc-title{
    margin: 0 0 18px 0;
    font-family: 'Hagrid text';
    font-weight: 800;
    font-size: 48px;
    line-height: 1.1;
    color: #DEAD17;
  }

  /* Map card */
  .map-card{
    display: block;
    position: relative;
    height: 420px;
    border-radius: var(--radius);
    overflow: hidden;
    background: var(--map-img) center/cover no-repeat;
    box-shadow: 0 10px 28px rgba(0,0,0,.08);
    text-decoration: none;
    margin: 8px 0 26px 0;
    isolation: isolate;
  }
  .map-card::before{
    content:"";
    position:absolute; inset:0;
    background: rgba(173, 133, 27, 0.7); /* warm brown tint */
    z-index:0;
    transition: background .25s ease;
  }
  .map-card:hover::before{ background: rgba(173, 133, 27,.45); }

  .map-cta{
    position: absolute; inset:0;
    display:flex; flex-direction:column; align-items:center; justify-content:center;
    gap:12px;
    z-index:1;
    color:#fff;
    text-align:center;
    font-weight:800;
    font-family:Poppins, sans-serif;
    font-size:28px;
    line-height:1.2;
    text-shadow: 0 2px 10px rgba(0,0,0,.25);
  }
  .map-cta svg{
    width:44px; height:44px; fill:#fff;
  }

  .loc-text{
      font-family: 'Montserrat';
    margin: 10px 0 0 0;
    max-width: 1050px;
    font-size: 20px;
    line-height: 1.8;
    color: var(--muted);
  }

  /* Responsive */
  @media (max-width: 1024px){
    .loc-title{ font-size: 42px; }
    .map-card{ height: 380px; }
  }
  @media (max-width: 640px){
    .loc-eyebrow{ font-size: 18px; }
    .loc-title{ font-size: 32px; }
    .map-card{ height: 300px; }
    .map-cta{ font-size: 22px; }
  }/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Hagrid Text';
	font-style: normal;
	font-weight: 500;
	font-display: auto;
	src: url('https://riad-dahab.com/wp-content/uploads/2025/09/Hagrid-Regular-trial.ttf') format('truetype');
}
@font-face {
	font-family: 'Hagrid Text';
	font-style: normal;
	font-weight: 900;
	font-display: auto;
	src: url('https://riad-dahab.com/wp-content/uploads/2025/09/Hagrid-Text-Extrabold-trial.ttf') format('truetype');
}
@font-face {
	font-family: 'Hagrid Text';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: ;
}
/* End Custom Fonts CSS */