﻿:root {
    --dark: #100B0C;
    --green: #75B184;
    --green-2: #92C7B7;
    --pink: #F27C9B;
    --pink-2: #F9CADD;
    --navy: #224067;
    --light-gray: #F5F1E9;
    --white: #FFFFFF;
    --black: #000000;
    --border-rad: 12px;
    --p-0: 0px;
    --p-110: 110px;
    --archivo-expanded: "archivo-expanded", Helvetica, Arial, sans-serif;
    --RocGrotesk: "RocGrotesk", Helvetica, Arial, sans-serif;
    --Newsreader: "Newsreader", Helvetica, Arial, sans-serif;
    --page-color: #FAF4EA;
    --global-color-main: #fcd42d;
    --global-color-secondary: #75b184;
    --global-color-tertiary: #f27c9b;
    --global-color-btn-bg: #fcd42d;
    --global-color-btn: #100b0c;
}

/* Adobe Typekit fonts */
@font-face {
    font-family: 'archivo-expanded';
    src: url('https://use.typekit.net/af/a8c824/00000000000000007750d1cf/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n4&v=3') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'archivo-expanded';
    src: url('https://use.typekit.net/af/c2c6c9/00000000000000007750d1c8/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n8&v=3') format('woff2');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

/* Google Fonts - Newsreader */
@import url('https://fonts.googleapis.com/css2?family=Newsreader:ital,opsz,wght@0,6..72,200..800;1,6..72,200..800&display=swap');

/* New Design Updates */
#header #top-header {
    display: none !important;
}

ul.nav.navbar-nav:first-child {
    display: none;
}

@media (max-width: 768px) {

    #header .collapse.in .navbar-nav,
    #header .collapsing .navbar-nav {
        background: #FFF;
    }

    #header #nav-header .navbar-nav a {
        color: #000;
    }
}

#header #nav-header {
    border-top: 0;
}

header {
    background-image: none !important;
}

.call-to-action .container,
.call-to-action .hidden {
    display: none !important;
}

body {
    background: #faf4ea !important;
    color: #100b0c;
    font: 16px / 1.5 archivo-expanded, Helvetica, Arial, sans-serif !important;
    height: 100% !important;
    margin: 0 !important;
    min-width: 320px !important;
}

#hero .background-image-cover {
  background-image: linear-gradient(to bottom, rgb(255 255 255 / 70%), rgb(242 124 155 / 0%)), url(https://thenativesun.com/wp-content/uploads/2026/01/TNS_SPI_guest_connect_hero.jpg) !important;
  background-size: cover;
  background-repeat: no-repeat;
  min-height: 610px;
  background-position: left center;
}

#hero .background-image-cover .hero-call-to-action::before {
    position: relative;
    top: 0;
    display: block;
    width: 70px;
    height: 70px;
    background-image: url(/nsr-custom-assets/images/the-native-sun-logo.svg);
    background-size: contain;
    background-position: left;
    background-repeat: no-repeat;
    text-align: center;
    margin: 0 auto;
}

#hero .background-image-cover .hero-call-to-action h1 {
    max-width: 350px;
    margin: 0 auto;
    padding-bottom: 20px;
}

#hero .background-image-cover .hero-call-to-action p {
    max-width: 350px;
    margin: 0 auto;
    padding-bottom: 20px;
}

#hero .background-image-cover .hero-call-to-action .col-sm-offset-1.mt50 {
    margin-top: 20px;
}


#hero .background-image-cover .hero-call-to-action h1 {
    color: #000;
    font-size: 35px;
    font-style: italic;
    font-weight: 400;
    line-height: 133.333%;
    letter-spacing: 0.6px;
    font-family: var(--Newsreader);
}

#hero .background-image-cover .hero-call-to-action p {
    font-family: var(--RocGrotesk);
    color: #000;
    font-size: 18px;
    font-weight: 400;
    line-height: 133.333%;
    letter-spacing: 0.6px;
}

#guest-search-box select,
#guest-search-box input {
    border: 1px solid #fff;
    border-radius: 0;
    outline: none;
    background-color: var(--pink);
    font-size: 14px;
    width: 100%;
    color: #faf4ea;
    height: auto;
    padding: 5px 5px;
}

#guest-search-box input#spi-walkin-promoCode {
    width: auto;
    max-width: 180px;
}

#guest-search-box input::placeholder {
    border-radius: 0;
    outline: none;
    background-color: var(--pink);
    font-size: 14px;
    width: 100%;
    color: #faf4ea;
}

#guest-search-box #srchBtn {
    background-color: var(--pink);
    color: #FAF4EA;
    font-family: var(--archivo-expanded);
    font-weight: 400;
    font-size: 14px;
    line-height: 100%;
    text-align: center;
    vertical-align: middle;
    text-transform: uppercase;
    border: 1px solid #faf4ea;
    outline: none;
    cursor: pointer;
    width: auto;
    padding: 8px 15px;
    height: auto;
    transition: all 0.3s ease;
}

#guest-search-box label {
    color: #333;
    font-weight: 500;
    font-size: 13px;
    line-height: 1;
    letter-spacing: 0.02em;
}

.call-to-action {
    background-color: var(--global-color-secondary);
    padding-top: 40px;
    padding-bottom: 40px;
}


.call-to-action .btn-default {
    background-color: var(--pink);
    color: #FAF4EA;
    padding: 15px;
    border-radius: 0px;
    text-decoration: none;
    font-family: var(--archivo-expanded);
    font-weight: 800;
    font-size: 20px;
    opacity: 1;
    transition: opacity 0.3s ease;
    text-transform: uppercase;
}

.call-to-action .btn-default:hover {
    background-color: var(--pink);
    text-decoration: none;
    opacity: .9;
}

.call-to-action h2 {
    color: rgba(255, 255, 255, 0.9);
    padding: 10px 0;
    margin: 0;
    font-family: var(--Newsreader);
    font-style: italic;
    font-size: 35px;
}

.container h2.hline.mt50,
#guest-search-box h2.hline.mt10 {
    padding: 12px 0;
    margin-bottom: 10px;
    font-size: 22px;
}

#footer .footer {
    background: #75b184;
    color: rgb(255 255 255);
    padding: 20px 0 0;
}

#footer h4 {
    font-size: 14px;
    color: rgb(255 255 255);
    text-transform: uppercase;
    margin: 0 0 30px 0;
}

.pre-footer .col-xs-2.col-md-2:first-of-type a[href="#top"] {
    background-image: url(/nsr-custom-assets/images/the-native-sun-logo.svg);
    background-size: contain;
    background-position: left;
    background-repeat: no-repeat;
    display: block;
}

.pre-footer .col-xs-2.col-md-2:first-of-type a[href="#top"] img {
    opacity: 0;
    visibility: hidden;
}

#footer {
    font-size: 12px;
    border-top: 1px solid #faf4ea;
}

#rooms-featured .media .media-body {
    padding: 20px;
    font-size: 16px;
    border-bottom: 0px solid rgba(0, 0, 0, 0.1);
    color: #575656;
    font-family: var(--RocGrotesk);
}

/* Availability Page Styles */
#resort-heading h2.hline {
    color: var(--dark);
    font-family: var(--Newsreader);
    font-style: italic;
    font-size: 27px;
    font-weight: 400;
    line-height: 1.3;
    letter-spacing: 0.6px;
}

#resort-heading .address {
    font-family: var(--RocGrotesk);
    color: var(--dark);
    font-size: 13px;
    line-height: 1.5;
}

/* Search Results Sidebar */
#search-results {
    background-color: var(--white);
    border: 1px solid rgba(16, 11, 12, 0.1);
    padding: 15px;
}

#search-results h3 {
    font-family: var(--archivo-expanded);
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
    color: var(--dark);
    margin-bottom: 15px;
    margin-top: 0;
}

#search-results .result {
    border-bottom: 1px solid rgba(16, 11, 12, 0.1);
    padding: 10px 0;
}

#search-results .result:last-child {
    border-bottom: none;
}

#search-results .result label {
    font-family: var(--RocGrotesk);
    font-size: 12px;
    font-weight: 500;
    color: var(--dark);
}

#search-results .result .pull-right {
    font-family: var(--RocGrotesk);
    font-size: 12px;
    color: var(--dark);
}

#search-results .actions {
    margin-top: 15px;
}

#search-results .btn-default {
    background-color: var(--white);
    color: var(--dark);
    border: 1px solid var(--dark);
    font-family: var(--archivo-expanded);
    font-weight: 400;
    font-size: 11px;
    text-transform: uppercase;
    padding: 10px 15px;
    border-radius: 0;
    transition: all 0.3s ease;
}

#search-results .btn-default:hover {
    background-color: var(--dark);
    color: var(--white);
}

.resort-description-menu .btn-primary {
    background-color: var(--pink);
    color: var(--light-gray);
    border: none;
    font-family: var(--archivo-expanded);
    font-weight: 800;
    font-size: 12px;
    text-transform: uppercase;
    padding: 12px 15px;
    border-radius: 0;
    transition: opacity 0.3s ease;
}

.resort-description-menu .btn-primary:hover {
    opacity: 0.9;
}

/* Carousel Styles */
#carousel-availability .carousel-control .glyphicon {
    color: var(--pink);
}

#carousel-availability .carousel-indicators li {
    background-color: rgba(242, 124, 155, 0.3);
    border: 1px solid var(--pink);
}

#carousel-availability .carousel-indicators li.active {
    background-color: var(--pink);
}

/* Choose Your Room Section */
#choose-room-title {
    color: var(--dark);
    font-family: var(--Newsreader);
    font-style: italic;
    font-size: 27px;
    font-weight: 400;
    line-height: 1.3;
    letter-spacing: 0.6px;
}

/* Room Type Availability Cards */
.roomTypeAvailability .panel {
    border: 1px solid rgba(16, 11, 12, 0.1);
    border-radius: 0;
    box-shadow: none;
    background-color: var(--white);
}

.roomTypeAvailability .panel-heading {
    background-color: var(--green);
    color: var(--white);
    border-radius: 0;
    padding: 15px 20px;
    border: none;
}

.roomTypeAvailability .panel-title {
    font-family: var(--archivo-expanded);
    font-size: 15px;
    font-weight: 800;
    text-transform: uppercase;
    color: var(--white);
}

.roomTypeAvailability .max-guests-label,
.roomTypeAvailability .max-guests {
    font-family: var(--RocGrotesk);
    font-size: 11px;
    color: var(--white);
}

.roomTypeAvailability .panel-body {
    padding: 15px;
}

.roomTypeAvailability .image-not-available {
    border: 1px solid rgba(16, 11, 12, 0.1);
}

/* Daily Rate Box */
.roomTypeAvailability .daily-rate-box h3 {
    font-family: var(--archivo-expanded);
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
    color: var(--dark);
    margin-top: 0;
    margin-bottom: 15px;
}

.roomTypeAvailability .table {
    font-family: var(--RocGrotesk);
}

.roomTypeAvailability .table thead td {
    font-weight: 700;
    color: var(--dark);
    font-size: 11px;
    text-transform: uppercase;
    border-bottom: 2px solid var(--green);
    padding: 10px 8px;
}

.roomTypeAvailability .table tbody td {
    color: var(--dark);
    font-size: 11px;
    padding: 10px 8px;
    border-bottom: 1px solid rgba(16, 11, 12, 0.1);
}

.roomTypeAvailability .table tbody td span {
    font-weight: 500;
}

/* Price Box */
.roomTypeAvailability .price-box h2 {
    color: var(--pink);
    font-family: var(--archivo-expanded);
    font-size: 24px;
    font-weight: 800;
    margin: 0 0 8px 0;
}

.roomTypeAvailability .price-box .note {
    font-family: var(--RocGrotesk);
    font-size: 9px;
    color: var(--dark);
    margin-bottom: 12px;
}

.roomTypeAvailability .price-box h4.total {
    font-family: var(--archivo-expanded);
    font-size: 14px;
    font-weight: 700;
    color: var(--dark);
    margin-bottom: 15px;
}

.roomTypeAvailability .price-box .btn-primary,
.roomTypeAvailability .price-box input[type="submit"] {
    background-color: var(--pink);
    color: var(--light-gray);
    border: none;
    font-family: var(--archivo-expanded);
    font-weight: 800;
    font-size: 12px;
    text-transform: uppercase;
    padding: 10px 25px;
    border-radius: 0;
    transition: opacity 0.3s ease;
    cursor: pointer;
}

.roomTypeAvailability .price-box .btn-primary:hover,
.roomTypeAvailability .price-box input[type="submit"]:hover {
    opacity: 0.9;
}

/* Cancellation Policy */
.fineprint h5 {
    font-family: var(--archivo-expanded);
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    color: var(--dark);
    margin-bottom: 12px;
}

.fineprint p {
    font-family: var(--RocGrotesk);
    font-size: 12px;
    line-height: 1.5;
    color: var(--dark);
}

/* Fix missing Glyphicons fonts - override Bootstrap's font-face */
@font-face {
    font-family: 'Glyphicons Halflings';
    src: local('Arial');
    font-weight: normal;
    font-style: normal;
}

/* Use Unicode symbols for carousel controls */
.glyphicon-chevron-left:before {
    content: '\2039' !important;
    font-family: Arial, sans-serif !important;
    font-weight: bold;
    font-size: 40px;
}

.glyphicon-chevron-right:before {
    content: '\203A' !important;
    font-family: Arial, sans-serif !important;
    font-weight: bold;
    font-size: 40px;
}

/* Navigation Header Logo Replacement */
#nav-header .navbar-brand img {
    content: url(/nsr-custom-assets/images/the-native-sun-logo.svg);
    width: 69px;
    height: 69px;
    object-fit: contain;
}

#nav-header .navbar-brand {
    width: 69px;
    height: 69px;
    padding: 5px;
}

/* Override Guest Connect blue (#379bff) with green */
#availability #resort-heading {
    background: var(--green) !important;
    padding-top: 70px;
    padding-bottom: 10px;
    margin-top: auto;
}

.call-to-action {
    background-color: var(--green) !important;
}

#booking #summary #totals h2 {
    background: var(--green) !important;
}

#chooose-your-hotel-section .panel-heading,
#choose-your-room-section .panel-heading {
    background: var(--green) !important;
}

#chooose-your-hotel-section .panel-body .price-box h2,
#choose-your-room-section .panel-body .price-box h2 {
    color: var(--pink) !important;
}

#chooose-your-hotel-section .panel-body .price-box .note,
#choose-your-room-section .panel-body .price-box .note {
    color: var(--pink) !important;
}

#chooose-your-hotel-section .resort-details h3 {
    color: var(--green) !important;
}

.call-to-action .btn-default {
    color: var(--dark) !important;
}

#confirmation .reservation-complete-header {
    background: var(--green) !important;
}

#reservation-complete-thanks h3 {
    color: var(--white) !important;
}

/* Resort Features Section */
#availability #resort-features {
    background: var(--page-color) url("/nsr-custom-assets/images/hero-2.png") no-repeat center bottom;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    padding: 40px 0;
    max-height: 470px;
}

/* Responsive Adjustments */
@media (max-width: 767px) {

    #resort-heading h2.hline,
    #choose-room-title {
        font-size: 22px;
    }

    .roomTypeAvailability .panel-title {
        font-size: 14px;
    }

    .roomTypeAvailability .price-box h2 {
        font-size: 20px;
    }
}


/* New Edits */

#hero .hero-call-to-action {
    display: block;
}

#hero .background-image-cover .hero-call-to-action::before {
    display: none;
}

#footer .pre-footer .container .pb20 {
    display: none;
}

.roomTypes.box.border.list-group-item-warning {
    background: transparent !important;
    border: none !important;
    text-align: center;
    padding-top: 3vw;
}

#availability #choose-your-room-section .row.fineprint {
    display: none;
}

#availability #resort-heading {
    /* display: none; */
}

#hero .background-image-cover .hero-call-to-action h1 {
    max-width: 660px;
    font-style: normal;
    font-family: inherit;
    font-size: 32px;
}

#hero .background-image-cover .hero-call-to-action p {
    max-width: 600px;
}

#availability #resort-heading > .row{
 margin: 0 auto;
}

#availability #resort-heading h1 {
    font-style: normal;
    font-family: inherit;
    font-size: 32px;
     color: #fff;
     padding-bottom: 20px;
}

#availability #resort-heading p.lead {
    font-family: var(--RocGrotesk);
    color: #fff;
    font-size: 18px;
    font-weight: 400;
    line-height: 133.333%;
    letter-spacing: 0.6px;
}

#guest-search-box label {
    font-family: var(--RocGrotesk) !important;
}

#rooms-featured {
    display: flex;
    flex-wrap: wrap;
}

#rooms-featured > div {
    display: flex;
}

#rooms-featured .media {
    display: flex;
    flex-direction: column;
    width: 100%;
    overflow: visible;
}

#rooms-featured .media-body {
    flex: 1;
    overflow: visible;
    width: 100%;
    display: block;
}

/* Responsive Adjustments */
@media (max-width: 767px) {

    #availability #resort-heading h1 {
        font-size: 32px;
        padding-bottom:15px;
    }

    #availability #resort-heading p.lead {
        font-size: 18px;
    }
}


/* =============================================
   BOOKING PAGE STYLES
   ============================================= */

/* Page Title */
#booking > h2.hline {
    font-family: var(--Newsreader);
    font-style: italic;
    font-weight: 400;
    font-size: 27px;
    color: var(--dark);
    letter-spacing: 0.6px;
    line-height: 1.3;
}

#booking > h2.hline:before,
#booking > h2.hline:after {
    background-color: rgba(16, 11, 12, 0.15);
}

/* Panel Overrides */
#booking .panel {
    border: 1px solid rgba(16, 11, 12, 0.1);
    border-radius: 0;
    box-shadow: none;
    background-color: var(--white);
}

#booking #checkout h2.panel-heading {
    background: var(--green) !important;
    color: var(--white);
    font-family: var(--archivo-expanded);
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    border-radius: 0;
    padding: 15px 20px;
    margin-top: 0;
    border: none;
}

/* Form Labels */
#booking #checkout label {
    font-family: var(--RocGrotesk);
    font-size: 13px;
    font-weight: 500;
    color: var(--dark);
}

/* Form Inputs & Selects */
#booking #checkout .form-control {
    border: 1px solid rgba(16, 11, 12, 0.2);
    border-radius: 0;
    font-family: var(--RocGrotesk);
    font-size: 14px;
    color: var(--dark);
    background-color: var(--white);
    padding: 8px 10px;
    height: auto;
    box-shadow: none;
    transition: border-color 0.2s ease;
}

#booking #checkout .form-control:focus {
    border-color: var(--green);
    box-shadow: 0 0 0 1px var(--green);
    outline: none;
}

#booking #checkout select.form-control {
    padding: 8px 6px;
}

/* Textarea (Special Request) */
#booking #checkout textarea.form-control {
    min-height: 100px;
    resize: vertical;
}

/* Buttons */
#booking #checkout .btn-default {
    background-color: var(--white);
    color: var(--dark);
    border: 1px solid var(--dark);
    font-family: var(--archivo-expanded);
    font-weight: 400;
    font-size: 11px;
    text-transform: uppercase;
    padding: 8px 15px;
    border-radius: 0;
    transition: all 0.3s ease;
}

#booking #checkout .btn-default:hover {
    background-color: var(--dark);
    color: var(--white);
}

#booking #checkout .btn-primary {
    background-color: var(--pink);
    color: var(--light-gray);
    border: none;
    font-family: var(--archivo-expanded);
    font-weight: 800;
    font-size: 14px;
    text-transform: uppercase;
    padding: 12px 30px;
    border-radius: 0;
    transition: opacity 0.3s ease;
    cursor: pointer;
}

#booking #checkout .btn-primary:hover {
    opacity: 0.9;
    background-color: var(--pink);
    color: var(--light-gray);
}

/* Terms & Conditions */
#booking #termAndCondition {
    font-family: var(--RocGrotesk);
    font-size: 13px;
    color: var(--dark);
}

#booking #termAndCondition a {
    color: var(--pink);
    text-decoration: underline;
}

#booking #termAndCondition a:hover {
    color: var(--green);
}

/* Book Room Button */
#booking #bookBtn {
    background-color: var(--pink);
    color: var(--light-gray);
    border: none;
    font-family: var(--archivo-expanded);
    font-weight: 800;
    font-size: 14px;
    text-transform: uppercase;
    padding: 12px 30px;
    border-radius: 0;
    transition: opacity 0.3s ease;
    cursor: pointer;
}

#booking #bookBtn:hover {
    opacity: 0.9;
    background-color: var(--pink);
}

/* Validation Errors */
#booking .validation-summary-errors {
    background-color: rgba(242, 124, 155, 0.15) !important;
    color: var(--pink);
    border: 1px solid var(--pink);
    border-radius: 0;
    font-family: var(--RocGrotesk);
    font-size: 13px;
    padding: 15px 20px 15px 30px;
}

/* Credit Card Logo */
#booking .creditCardLogo {
    font-size: 24px;
}

/* Billing Same As Guest Checkbox */
#booking #billingSameAsGuestChoiceContainer {
    font-family: var(--RocGrotesk);
    font-size: 13px;
    color: var(--dark);
    padding: 10px 0;
}

/* =============================================
   RESERVATION SUMMARY SIDEBAR
   ============================================= */

#booking #summary .panel {
    border: 1px solid rgba(16, 11, 12, 0.1);
    border-radius: 0;
    box-shadow: none;
    background-color: var(--white);
}

#booking #summary h2.panel-heading {
    background: var(--green) !important;
    color: var(--white);
    font-family: var(--archivo-expanded);
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    border-radius: 0;
    padding: 15px 20px;
    margin-top: 0;
    border: none;
}

/* Summary Labels */
#booking #summary label {
    font-family: var(--RocGrotesk);
    font-size: 12px;
    font-weight: 500;
    color: rgba(16, 11, 12, 0.6);
    text-transform: uppercase;
}

/* Summary Values */
#booking #summary span {
    font-family: var(--RocGrotesk);
    font-size: 13px;
    color: var(--dark);
    font-weight: 600;
}

/* Summary Section Dividers */
#booking #summary .div-borders > div {
    border-bottom: 1px solid rgba(16, 11, 12, 0.1);
    padding: 8px 0;
}

/* Summary Sub-headings */
#booking #summary h3 {
    font-family: var(--archivo-expanded);
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    color: var(--dark);
    background: rgba(117, 177, 132, 0.12);
    padding: 10px 12px;
    margin: 0;
}

/* Totals Section */
#booking #summary #totals h2 {
    background: var(--green) !important;
    color: var(--white);
    font-family: var(--archivo-expanded);
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    padding: 12px 15px;
    margin-top: 0;
    border-radius: 0;
}

#booking #summary #totals .total {
    background: rgba(117, 177, 132, 0.05);
    border-top: 1px solid rgba(16, 11, 12, 0.15);
    padding: 10px 8px;
}

#booking #summary #totals .total .pull-right {
    font-family: var(--archivo-expanded);
    font-size: 18px;
    font-weight: 800;
    color: var(--dark);
}

/* Additional Charges Accordion */
#booking #summary .additional-wrap {
    background: rgba(16, 11, 12, 0.03);
    border-top: 1px solid rgba(16, 11, 12, 0.1);
}

#booking #summary .additional-wrap .additional-header {
    font-family: var(--RocGrotesk);
    font-size: 12px;
    cursor: pointer;
    padding: 8px 12px;
}

#booking #summary .additional-wrap .additional-header label {
    cursor: pointer;
    text-transform: none;
    color: var(--green);
}

#booking #summary .additional-wrap .additional-breakdown h3 {
    font-size: 10px;
    background: none;
    border-top: 1px solid rgba(16, 11, 12, 0.08);
    padding: 8px 15px 0;
}

/* Insurance Section in Summary */
#booking #summary #insuranceSection {
    padding: 8px 0;
}

/* =============================================
   BOOKING PAGE RESPONSIVE
   ============================================= */
@media (max-width: 767px) {
    #booking > h2.hline {
        font-size: 22px;
        padding: 15px 10px;
    }

    #booking #bookBtn {
        width: 100%;
        padding: 14px 20px;
    }

    #booking #checkout .btn-default {
        font-size: 10px;
        padding: 6px 10px;
        margin-bottom: 10px;
    }

    #booking #summary {
        margin-top: 20px;
    }
}

@media (max-width: 480px) {
    #booking #checkout .form-control {
        font-size: 16px;
    }

    #booking #checkout select.form-control {
        font-size: 16px;
    }
}