:root{--green:#346734;--green-dark:#172116;--beige:#efe5d3;--gold:#d8b46a;--text-dark:#223021;--text-soft:#4a5445;--white:#ffffff;--white-soft:rgba(255,255,255,0.8);--border-soft:#d8ccb8;--shadow:0 18px 40px rgba(15,23,42,0.08);--radius-xl:32px;--radius-lg:20px;--max-width:1280px}*{box-sizing:border-box}body{margin:0;color:var(--text-dark);background:var(--green);line-height:1.6}h1,h2,h3,h4{font-family:Georgia,serif;font-weight:400;margin:0}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.container{width:min(90%,var(--max-width));margin:0 auto}.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:0.35em;font-size:13px}.section-light{background:var(--beige);color:var(--text-dark);padding:100px 0}.section-dark{background:var(--green);color:var(--white);padding:100px 0}.card{background:var(--white);border-radius:var(--radius-xl);box-shadow:var(--shadow);overflow:hidden}.btn{display:inline-block;border-radius:999px;padding:14px 24px;font-weight:700;transition:0.2s ease}.btn-outline{border:1px solid var(--gold);color:var(--white)}.btn-outline:hover{background:var(--gold);color:var(--green)}.btn-dark{border:1px solid var(--text-dark);color:var(--text-dark)}.btn-dark:hover{background:var(--text-dark);color:var(--white)}.btn-gold{background:#a56f28;color:var(--white);border:none}.site-header{position:sticky;top:0;z-index:1000;background:rgba(52,103,52,0.92);backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,0.08)}.site-header .container{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0}.brand{display:flex;align-items:center;gap:14px}.brand img{height:42px;width:auto}.brand-location{color:var(--gold);text-transform:uppercase;letter-spacing:0.35em;font-size:11px;white-space:nowrap}.nav{display:flex;gap:28px;color:var(--white);font-size:14px}.hero{position:relative;min-height:760px;display:flex;align-items:center;padding:140px 0 80px;color:var(--white);background-size:cover;background-position:center;background-repeat:no-repeat}.home-hero{background:linear-gradient(rgba(15,23,15,0.35),rgba(15,23,15,0.55)),url('/wp-content/uploads/2026/04/villa-sonate-jamaica-welcome.jpg') center/cover no-repeat}.rooms-hero{background:linear-gradient(rgba(15,23,15,0.35),rgba(15,23,15,0.55)),url('/wp-content/uploads/2026/04/villa-sonate-62.jpg') center/cover no-repeat}.meetings-hero{background:linear-gradient(rgba(15,23,15,0.35),rgba(15,23,15,0.55)),url('/wp-content/uploads/2026/04/wedding-at-villa-sonate-drk.jpg') center/cover no-repeat}.gallery-hero{background:linear-gradient(rgba(15,23,15,0.35),rgba(15,23,15,0.55)),url('/wp-content/uploads/2026/04/villa-sonate-runaway-bay-97dark.jpg') center/cover no-repeat}.book-hero{background:linear-gradient(rgba(15,23,15,0.35),rgba(15,23,15,0.55)),url('/wp-content/uploads/2026/04/villa-sonate-21-drk.jpg') center/cover no-repeat}.about-hero{background:linear-gradient(rgba(15,23,15,0.35),rgba(15,23,15,0.55)),url('/wp-content/uploads/2026/04/villa-sonate-12-drk.jpg') center/cover no-repeat}.todo-hero{background:linear-gradient(rgba(15,23,15,0.35),rgba(15,23,15,0.55)),url('/wp-content/uploads/2026/04/things-to-do-in-runaway-bay-drk.jpg') center/cover no-repeat}.contact-hero{background:linear-gradient(rgba(15,23,15,0.35),rgba(15,23,15,0.55)),url('/wp-content/uploads/2017/06/villa-sonate-jamaica-welcome.jpg') center/cover no-repeat}.hero h1{font-size:72px;line-height:1.08;max-width:850px;margin-top:24px}.hero p.lead{max-width:680px;font-size:18px;color:rgba(255,255,255,0.85);margin-top:24px}.booking-bar{margin-top:60px;display:grid;grid-template-columns:repeat(6,1fr);gap:16px;background:var(--beige);padding:20px;border-radius:var(--radius-xl);box-shadow:0 25px 50px rgba(15,23,42,0.16);color:var(--text-dark)}.booking-field label{display:block;font-size:13px;font-weight:700;margin-bottom:8px}.booking-field input,.booking-field select,.booking-bar button{width:100%;padding:14px 16px;border-radius:14px;border:1px solid var(--border-soft);background:var(--white);font-size:15px}.booking-bar button{background:#a56f28;color:var(--white);border:none;font-weight:700;cursor:pointer}.booking-action{display:flex;align-items:end}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.feature-grid{margin-top:32px;display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.feature-box{background:rgba(255,255,255,0.7);border:1px solid var(--border-soft);border-radius:var(--radius-lg);padding:18px 20px;font-size:14px}.statement{background:linear-gradient(rgba(18,27,18,0.45),rgba(18,27,18,0.55)),url('/wp-content/uploads/2026/04/villa-sonate-76-drk.jpg') center/cover no-repeat;color:var(--white);padding:120px 0}.statement h2,.meetings h2,.cta h2,.section-light h2{font-size:52px;line-height:1.15;margin-top:18px}.rooms-header{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:40px}.rooms-grid,.experiences-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.room-card img,.experience-card img{width:100%;height:320px;object-fit:cover}.room-card-content,.experience-card-content{padding:24px}.price-badge{display:inline-block;background:var(--green);color:var(--white);border-radius:999px;padding:8px 12px;font-size:12px;margin-top:12px}.soft-stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:32px}.soft-stat{background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.1);border-radius:20px;padding:24px}.soft-stat .label{color:var(--gold);font-size:12px;letter-spacing:0.2em;text-transform:uppercase}.soft-stat .value{margin-top:12px;font-size:28px;line-height:1.2}.cta-box{background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.10);border-radius:32px;padding:60px;text-align:center}.cta-box p{max-width:760px;margin:24px auto 0;color:rgba(255,255,255,0.8)}.site-footer{background:var(--green-dark);color:rgba(255,255,255,0.75);padding:60px 0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:36px}.footer-title{color:var(--gold);text-transform:uppercase;letter-spacing:0.25em;font-size:12px;margin-bottom:14px}@media (max-width:767px){.site-header .container{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:0!important;flex-wrap:nowrap!important}}.brand{flex-direction:column;gap:8px;text-align:center}.brand img{height:64px;width:auto}@media (max-width:980px){.brand img{height:52px}}@media (max-width:767px){.brand img{height:56px}}.brand-location{white-space:normal;text-align:center}.nav{gap:10px 14px;font-size:12px}.hero{min-height:auto;padding:120px 0 60px}.hero h1{font-size:40px}.section-light,.section-dark,.statement{padding:60px 0}.booking-bar{grid-template-columns:1fr}.cta-box{padding:32px 24px}}@media (max-width:767px){.site-header .container{gap:12px}.brand{flex-direction:column;gap:8px;text-align:center}.brand img{height:34px}.brand-location{white-space:normal;text-align:center}.nav{gap:10px 14px;font-size:12px}.hero{min-height:auto;padding:120px 0 60px}.hero h1{font-size:40px}.section-light,.section-dark,.statement{padding:60px 0}.booking-bar{grid-template-columns:1fr}.cta-box{padding:32px 24px}}body{margin:0}.et_pb_section:first-child{padding-top:0!important}#page-container{padding-top:0!important;margin-top:0!important}body{margin:0}#page-container{padding-bottom:0!important;margin-bottom:0!important}.et_pb_section:last-child{padding-bottom:0!important;margin-bottom:0!important}.site-footer,footer.site-footer{margin-bottom:0!important}.et-l--footer{margin-bottom:0!important}.et_post_meta_wrapper:last-child,#main-content,.et_pb_post{margin-bottom:0!important;padding-bottom:0!important}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.gallery-grid img{width:100%;height:320px;object-fit:cover;border-radius:24px;box-shadow:0 18px 40px rgba(15,23,42,0.08)}@media (max-width:980px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:767px){.gallery-grid{grid-template-columns:1fr}.gallery-grid img{height:260px}}.et_pb_section{padding-top:0!important;padding-bottom:0!important}.et_pb_section{padding-top:0!important;padding-bottom:0!important}.et_pb_row{margin-bottom:0!important;padding-top:0!important;padding-bottom:0!important}.et_pb_module{margin-bottom:0!important}.section-light,.section-dark,.statement{padding:60px 0}.menu-button a{display:inline-block;padding:10px 20px;border-radius:999px;border:1px solid #D8B46A;color:#ffffff!important;font-weight:600;font-size:14px;letter-spacing:0.04em;text-decoration:none;transition:all 0.25s ease}.woocommerce-checkout #main-content,.woocommerce-order-received #main-content{background:#efe5d3}.woocommerce-checkout form.checkout,.woocommerce-order-received .woocommerce-order{max-width:1180px;margin:0 auto}.woocommerce-checkout .col2-set,.woocommerce-checkout #order_review,.woocommerce-checkout .woocommerce-additional-fields,.woocommerce-order-received .woocommerce-order,.woocommerce-order-received .woocommerce-customer-details,.woocommerce-order-received .woocommerce-order-details{background:#ffffff;border:1px solid #e5e7eb;border-radius:24px;padding:28px;box-shadow:0 18px 40px rgba(15,23,42,0.08);margin-bottom:24px}.woocommerce-checkout h1,.woocommerce-checkout h2,.woocommerce-checkout h3,.woocommerce-order-received h1,.woocommerce-order-received h2,.woocommerce-order-received h3{color:#223021;font-family:Georgia,serif;font-weight:400;line-height:1.15}.woocommerce-checkout label{color:#223021;font-weight:600;font-size:14px}.woocommerce-checkout input.input-text,.woocommerce-checkout textarea,.woocommerce-checkout select,.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea{border:1px solid #d8ccb8;border-radius:14px;padding:14px 16px;background:#ffffff;color:#223021;font-size:15px}.woocommerce-checkout input.input-text:focus,.woocommerce-checkout textarea:focus,.woocommerce-checkout select:focus{border-color:#a56f28;outline:none}.woocommerce-checkout #order_review table,.woocommerce-order-received table.shop_table{border-collapse:separate;border-spacing:0;width:100%;overflow:hidden;border-radius:18px;border:1px solid #e5e7eb}.woocommerce-checkout #order_review th,.woocommerce-checkout #order_review td,.woocommerce-order-received table.shop_table th,.woocommerce-order-received table.shop_table td{padding:14px 16px;border-bottom:1px solid #eef1f4}.woocommerce-checkout #order_review th,.woocommerce-order-received table.shop_table th{background:#f8f5ee;color:#223021}.woocommerce-checkout #payment{background:#ffffff;border:1px solid #e5e7eb;border-radius:20px;padding:20px}.woocommerce-checkout #payment ul.payment_methods{border-bottom:1px solid #eef1f4;padding-bottom:12px;margin-bottom:16px}.woocommerce-checkout #payment div.payment_box{background:#f8f5ee;color:#4a5445;border-radius:14px}.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:#f8f5ee}.vsbe-checkout-payment-plan{background:#ffffff;border:1px solid #e5e7eb;border-radius:20px;padding:22px;margin:0 0 24px}.vsbe-checkout-payment-plan h3{margin:0 0 12px;color:#223021}.vsbe-checkout-payment-plan label{display:block;margin-bottom:10px;color:#223021;font-weight:600}.vsbe-payment-note{margin-top:12px;color:#6c7268;font-size:14px}.woocommerce-checkout #place_order,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{background:#a56f28!important;color:#ffffff!important;border:none!important;border-radius:999px!important;padding:14px 24px!important;font-weight:700!important;text-transform:none!important;box-shadow:none!important}.woocommerce-checkout #place_order:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{opacity:0.92}.woocommerce a{color:#346734}.woocommerce-error,.woocommerce-info,.woocommerce-message{background:#ffffff;border:1px solid #e5e7eb;border-left:4px solid #a56f28;border-radius:16px;color:#223021;box-shadow:0 18px 40px rgba(15,23,42,0.05)}.woocommerce-order-received .woocommerce-order p,.woocommerce-order-received address{color:#4a5445}@media (max-width:767px){.woocommerce-checkout .col2-set,.woocommerce-checkout #order_review,.woocommerce-checkout .woocommerce-additional-fields,.woocommerce-order-received .woocommerce-order,.woocommerce-order-received .woocommerce-customer-details,.woocommerce-order-received .woocommerce-order-details{padding:20px;border-radius:20px}}.woocommerce-checkout #payment div.payment_box,.woocommerce-checkout .woocommerce-additional-fields,.woocommerce-checkout #order_review,.woocommerce-checkout .col2-set{box-shadow:none!important}.woocommerce-checkout .col2-set{width:100%!important;float:none!important}.woocommerce-checkout .col-1{width:100%!important;float:none!important}.woocommerce-checkout .col-2{display:none!important}.woocommerce-checkout #order_review{width:100%!important;float:none!important;margin-top:30px}.vs-divider{border:0;border-top:1px solid #e8dcc8;margin:32px 0}.section-light .card h2,.section-dark .card h2{font-size:34px;line-height:1.2;color:#223021}.section-dark .card h2{color:#ffffff}@media (max-width:767px){.section-light .card,.section-dark .card{padding:24px!important}.section-light .card h2,.section-dark .card h2{font-size:28px}.vs-divider{margin:24px 0}}body,p,.et_pb_text,.et_pb_text p,.et_pb_blurb_description,.woocommerce,.woocommerce p,li{font-size:18px!important;line-height:1.8;color:#4a5445}.lead{font-size:21px!important;line-height:1.7}small,.description,.et_pb_text small{font-size:15px!important;line-height:1.6}.btn,.et_pb_button,.woocommerce button.button,.woocommerce a.button,.woocommerce input.button{font-size:16px!important;font-weight:600}#top-menu li a,.et-menu a{font-size:16px!important;font-weight:500;letter-spacing:0.3px}@media (max-width:767px){body,p,.et_pb_text,.et_pb_text p,li{font-size:17px!important;line-height:1.75}.lead{font-size:19px!important}#top-menu li a,.et-menu a{font-size:15px!important}}.meetings-hero{background-image:url('/wp-content/uploads/2026/04/green-grotto.jpg');background-size:cover;background-position:center;min-height:500px}html,body{max-width:100%;overflow-x:hidden}img{max-width:100%;height:auto}.container{width:min(92%,1280px);margin-left:auto;margin-right:auto}.et_pb_row,.et_pb_column,.et_pb_module{max-width:100%}@media (max-width:980px){.container{width:92%}.hero{min-height:560px!important;padding:120px 0 70px!important;background-position:center center!important}.hero h1{font-size:clamp(42px,7vw,58px)!important;line-height:1.08!important;max-width:100%!important}.hero p.lead,.lead{font-size:20px!important;line-height:1.65!important;max-width:100%!important}.two-col{display:grid!important;grid-template-columns:1fr!important;gap:34px!important}.feature-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px!important}.rooms-grid,.experiences-grid,.gallery-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:24px!important}.card,.room-card,.experience-card{width:100%!important;border-radius:24px!important}.room-card img,.experience-card img,.gallery-grid img,.two-col img{width:100%!important;height:340px!important;object-fit:cover!important;border-radius:24px}.room-card-content,.experience-card-content{padding:24px!important}.section-light,.section-dark,.statement{padding:70px 0!important}.section-light h2,.section-dark h2,.statement h2,.meetings h2,.cta h2{font-size:clamp(36px,6vw,48px)!important;line-height:1.15!important}.cta-box{padding:44px 28px!important;border-radius:28px!important}.booking-bar{grid-template-columns:1fr 1fr!important;gap:16px!important;padding:20px!important}.booking-action{align-items:stretch!important}.booking-bar button{min-height:52px}}@media (max-width:767px){.container{width:90%!important}.section-light,.section-dark,.statement{padding:56px 0!important}.hero{min-height:520px!important;padding:110px 0 58px!important;align-items:center!important;text-align:left}.hero h1{font-size:clamp(36px,10vw,44px)!important;line-height:1.08!important;letter-spacing:-0.02em}.hero p.lead,.lead{font-size:18px!important;line-height:1.65!important}.eyebrow{font-size:11px!important;letter-spacing:0.22em!important;line-height:1.5}h1,h2,h3{overflow-wrap:break-word}.section-light h2,.section-dark h2,.statement h2,.meetings h2,.cta h2{font-size:34px!important;line-height:1.14!important}h3,.room-card h3,.experience-card h3{font-size:26px!important;line-height:1.2!important}body,p,li,.feature-box,.et_pb_text,.et_pb_text p{font-size:17px!important;line-height:1.75!important}.two-col,.feature-grid,.rooms-grid,.experiences-grid,.gallery-grid,.soft-stat-grid,.footer-grid{display:grid!important;grid-template-columns:1fr!important;gap:22px!important}.room-card img,.experience-card img,.gallery-grid img,.two-col img{width:100%!important;height:300px!important;object-fit:cover!important;border-radius:22px!important}.card,.feature-box,.soft-stat,.room-card,.experience-card{border-radius:22px!important}.card[style*="padding"],.section-light .card,.section-dark .card{padding:26px!important}.room-card-content,.experience-card-content{padding:22px!important}.booking-bar{grid-template-columns:1fr!important;gap:14px!important;border-radius:24px!important;padding:18px!important}.booking-field input,.booking-field select,.booking-bar button{width:100%!important;min-height:52px!important;font-size:16px!important}.rooms-header{flex-direction:column!important;align-items:flex-start!important;gap:14px!important}.price-badge{display:inline-block;margin-top:12px}.cta-box{padding:34px 22px!important;border-radius:24px!important}.cta-box p{font-size:17px!important}.btn,.btn-gold,.btn-dark,.btn-outline,.et_pb_button{width:auto;max-width:100%;text-align:center;font-size:16px!important;padding:13px 20px!important}.site-footer{padding:48px 0!important}}@media (max-width:420px){.container{width:88%!important}.hero{min-height:500px!important;padding-top:100px!important}.hero h1{font-size:34px!important}.section-light h2,.section-dark h2,.statement h2{font-size:30px!important}.room-card img,.experience-card img,.gallery-grid img,.two-col img{height:260px!important}.card[style*="padding"],.section-light .card,.section-dark .card{padding:22px!important}}@media (max-width:767px){.vsbe-wrap{padding:0!important;width:100%!important}.vsbe-card{padding:22px!important;border-radius:22px!important}.vsbe-search-grid,.vsbe-form-grid{grid-template-columns:1fr!important;gap:14px!important}.vsbe-search-grid input,.vsbe-search-grid select,.vsbe-form-grid input,.vsbe-form-grid textarea{min-height:52px!important;font-size:16px!important}.vsbe-room-header{flex-direction:column!important;gap:16px!important}.vsbe-price-box{width:100%!important;min-width:0!important}.vsbe-button{width:100%!important;justify-content:center!important;min-height:52px!important}}@media (max-width:767px){.woocommerce-checkout form.checkout,.woocommerce-order-received .woocommerce-order{width:90%!important;max-width:90%!important;margin:0 auto!important}.woocommerce-checkout .col2-set,.woocommerce-checkout #order_review,.woocommerce-checkout #payment,.woocommerce-checkout .woocommerce-additional-fields{width:100%!important;float:none!important;padding:22px!important;border-radius:22px!important}.woocommerce-checkout .form-row-first,.woocommerce-checkout .form-row-last,.woocommerce-checkout .form-row-wide{width:100%!important;float:none!important;clear:both!important}.woocommerce-checkout input.input-text,.woocommerce-checkout textarea,.woocommerce-checkout select{width:100%!important;min-height:52px!important;font-size:16px!important}.woocommerce-checkout #place_order{width:100%!important;min-height:54px!important}}@media (max-width:767px){body.home .hero{min-height:520px!important;padding:110px 0 60px!important}body.home .hero h1{font-size:38px!important;line-height:1.08!important}body.home .hero .lead{font-size:18px!important;line-height:1.65!important}body.home .booking-bar{grid-template-columns:1fr!important;gap:14px!important;padding:18px!important;border-radius:24px!important}body.home .booking-field input,body.home .booking-field select,body.home .booking-bar button{width:100%!important;min-height:52px!important}body.home .two-col,body.home .rooms-grid,body.home .experiences-grid,body.home .feature-grid,body.home .soft-stat-grid{grid-template-columns:1fr!important;gap:24px!important}body.home .room-card img,body.home .experience-card img,body.home .two-col img{width:100%!important;height:300px!important;object-fit:cover!important;border-radius:22px!important}body.home .section-light,body.home .section-dark,body.home .statement{padding:56px 0!important}body.home h2{font-size:34px!important;line-height:1.15!important}body.home .cta-box{padding:34px 22px!important;border-radius:24px!important}}