:root{--ocean:#0a6b73;--ocean-deep:#064a50;--turq:#12b6b6;--aqua:#2fd6cf;--coral:#ff6f57;--coral-deep:#f0553c;--sand:#fbf6ee;--cream:#fffdf9;--ink:#0d2b2c;--muted:#5a7375;--line:#e7ded1;--shadow:0 24px 60px -22px rgba(6,74,80,.5);--shadow-sm:0 10px 28px -14px rgba(6,74,80,.4)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Jost,system-ui,sans-serif;color:var(--ink);background:var(--cream);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3,.serif{font-family:Cormorant Garamond,Georgia,serif;line-height:1.04;letter-spacing:-.01em;font-weight:600}body{letter-spacing:.005em}.wrap{max-width:1200px;margin:0 auto;padding:0 30px}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.btn{display:inline-flex;align-items:center;gap:9px;font-weight:700;font-size:15px;padding:15px 28px;border-radius:999px;border:none;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background .18s;white-space:nowrap}.btn-primary{background:var(--coral);color:#fff;box-shadow:0 12px 26px -10px #f0553cb3}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 18px 34px -10px #f0553ccc}.btn-ink{background:var(--ink);color:#fff}.btn-ink:hover{transform:translateY(-2px);background:#06393a}.btn-ghost{background:#ffffff24;color:#fff;border:1.5px solid rgba(255,255,255,.55);backdrop-filter:blur(6px)}.btn-ghost:hover{background:#ffffff42}.btn-dark{background:var(--ocean);color:#fff;box-shadow:var(--shadow-sm)}.btn-dark:hover{transform:translateY(-2px);background:var(--ocean-deep)}.eyebrow{font-weight:500;letter-spacing:.28em;text-transform:uppercase;font-size:12px;color:var(--turq)}.reveal{opacity:0;transform:translateY(34px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}.reveal.in{opacity:1;transform:none}nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;justify-content:center;padding:0 20px;pointer-events:none}.bar{pointer-events:auto;display:flex;align-items:center;justify-content:center;gap:34px;width:auto;max-width:calc(100% - 40px);margin-top:84px;background:#ffffffbd;backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.6);border-radius:999px;padding:9px 38px;box-shadow:0 14px 40px -18px #064a5073;transition:max-width .5s cubic-bezier(.4,0,.2,1),margin-top .5s cubic-bezier(.4,0,.2,1),border-radius .5s cubic-bezier(.4,0,.2,1),padding .4s,background .4s,box-shadow .4s}nav.scrolled .bar{max-width:960px;margin-top:0;padding:6px 38px;border-radius:0 0 26px 26px;background:#fffffff2;box-shadow:0 10px 30px -14px #064a504d}.logo{display:flex;align-items:center}.logo img{height:224px;width:auto;display:block;border-radius:18px;margin:-86px 0;box-shadow:0 18px 40px -14px #0000008c;transition:height .4s cubic-bezier(.4,0,.2,1),margin .4s cubic-bezier(.4,0,.2,1)}nav.scrolled .logo img{height:66px;margin:0;border-radius:14px}.nav-links{display:flex;gap:24px;font-weight:400;font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}.nav-links a{opacity:.72;transition:opacity .2s;white-space:nowrap}.nav-links a:hover{opacity:1}@media (max-width:900px){.nav-links{display:none}}header{position:relative;min-height:100vh;display:flex;align-items:flex-end;color:#fff;overflow:hidden}.hero-img{position:absolute;inset:0;background:linear-gradient(150deg,#075056,#0a6b73 55%,#0e8e86);z-index:0}.hero-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:kenburns 18s ease-in-out infinite alternate}@keyframes kenburns{0%{transform:scale(1.06)}to{transform:scale(1.16) translate(-1.5%,-1.5%)}}.hero-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,#06323757,#06323726 40%,#063237c7)}.hero-in{position:relative;z-index:2;width:100%;padding:0 0 74px}.hero-badges{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}.badge{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;background:#ffffff26;border:1px solid rgba(255,255,255,.32);padding:8px 15px;border-radius:999px;backdrop-filter:blur(6px)}.hero h1{font-size:clamp(64px,10vw,150px);font-weight:500;letter-spacing:-.015em;margin-bottom:26px;text-shadow:0 8px 40px rgba(0,0,0,.25)}.hero h1 em{font-style:italic;font-weight:400;color:var(--aqua)}.hero-lead{font-weight:300}.hero-row{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;flex-wrap:wrap}.hero-lead{font-size:20px;max-width:520px;color:#ffffffeb}.hero-actions{display:flex;flex-direction:column;gap:16px;align-items:flex-start}.hero-btns{display:flex;gap:13px;flex-wrap:wrap}.sync-trust{display:flex;align-items:center;gap:12px;font-size:13.5px;color:#ffffffe6;max-width:360px}.anim{opacity:0;transform:translateY(40px);animation:rise .9s cubic-bezier(.2,.7,.2,1) forwards}.d1{animation-delay:.1s}.d2{animation-delay:.25s}.d3{animation-delay:.4s}.d4{animation-delay:.55s}.d5{animation-delay:.7s}@keyframes rise{to{opacity:1;transform:none}}.scroll-cue{position:absolute;bottom:26px;left:50%;transform:translate(-50%);z-index:3;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#fffc;display:flex;flex-direction:column;align-items:center;gap:8px}.scroll-cue .line{width:1.5px;height:38px;background:linear-gradient(rgba(255,255,255,.9),transparent);animation:cue 1.8s ease-in-out infinite}@keyframes cue{0%,to{transform:scaleY(.4);opacity:.4;transform-origin:top}50%{transform:scaleY(1);opacity:1;transform-origin:top}}@media (max-width:900px){.hero-in{padding-bottom:54px}.scroll-cue{display:none}}.stats{background:var(--ink);color:#fff}.stats-in{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:46px 0}.stat{text-align:center}.stat b{display:block;font-family:Cormorant Garamond;font-size:clamp(34px,4vw,50px);font-weight:600;color:var(--aqua)}.stat span{font-size:14px;font-weight:600;color:#ffffffb3}@media (max-width:640px){.stats-in{grid-template-columns:repeat(2,1fr);gap:30px}}section{padding:110px 0;scroll-margin-top:90px}.sec-head{max-width:720px;margin-bottom:58px}.sec-head h2{font-size:clamp(44px,6.2vw,78px);font-weight:600;margin:14px 0 18px}.sec-head p{font-size:18px;color:var(--muted);font-weight:300}.center{margin-left:auto;margin-right:auto;text-align:center}.villa-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}.villa-copy p{color:var(--muted);font-size:18px;margin-bottom:18px}.villa-photo{border-radius:26px;overflow:hidden;box-shadow:var(--shadow);aspect-ratio:4/5;background:linear-gradient(135deg,#0a6b73,#2fd6cf);position:relative}.villa-photo img{width:100%;height:100%;object-fit:cover}.amen{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:40px}@property --chase{syntax:"<angle>";inherits:false;initial-value:0deg}.amen-item{position:relative;display:flex;align-items:center;gap:13px;background:var(--sand);border-radius:15px;padding:16px;font-weight:600;font-size:15px;box-shadow:0 8px 18px -12px #064a5059;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.amen-item:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:2px;pointer-events:none;background:conic-gradient(from var(--chase),transparent 0deg,transparent 205deg,rgba(47,214,207,.35) 250deg,#2fd6cf 300deg,#b8fff8 330deg,#2fd6cf 345deg,transparent 360deg);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:chase 3.2s linear infinite}@keyframes chase{to{--chase:360deg}}.amen-item:hover{transform:translateY(4px);background:#fff;box-shadow:0 4px 12px -8px #064a5066}.amen-item:hover:before{filter:drop-shadow(0 0 5px rgba(47,214,207,.9));animation-duration:1.4s}.amen-item .ic{position:relative;width:40px;height:40px;border-radius:12px;background:#fff;display:grid;place-items:center;flex-shrink:0;box-shadow:var(--shadow-sm)}.amen-item svg{width:21px;height:21px;stroke:var(--ocean);fill:none;stroke-width:2}@media (max-width:900px){.villa-grid{grid-template-columns:1fr;gap:40px}.villa-photo{aspect-ratio:16/11}}.gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:210px;gap:16px}.tile{border-radius:20px;overflow:hidden;position:relative;color:#fff;box-shadow:var(--shadow-sm);cursor:pointer;background:linear-gradient(135deg,#0a6b73,#2fd6cf);transition:transform .5s cubic-bezier(.2,.7,.2,1),filter .5s,box-shadow .5s;padding:0;border:0;font:inherit;display:block;width:100%;text-align:left}.tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.tile .cap{position:absolute;left:18px;bottom:16px;font-weight:700;font-size:16px;text-shadow:0 2px 12px rgba(0,0,0,.5);z-index:2;transition:transform .4s}.tile:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(4,40,44,.62));z-index:1;transition:opacity .5s}.t1{grid-column:span 2;grid-row:span 2}.t4{grid-column:span 2}.gallery:hover .tile{filter:brightness(.62) saturate(.85)}.gallery .tile:hover{filter:brightness(1.08) saturate(1.05);transform:scale(1.015);box-shadow:0 30px 60px -22px #12b6b699,0 0 0 2px #2fd6cf80}.gallery .tile:hover img{transform:scale(1.09)}.gallery .tile:hover .cap{transform:translateY(-3px)}.gallery .tile:hover:after{opacity:.55}@media (max-width:900px){.gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:170px}.t1{grid-column:span 2}.gallery:hover .tile{filter:none}}.gallery.more{margin-top:16px;grid-auto-rows:210px}.gallery.more[hidden]{display:none}.gallery-actions{display:flex;justify-content:center;margin-top:36px}@media (max-width:900px){.gallery.more{grid-auto-rows:150px}}.lb{position:fixed;inset:0;z-index:200;display:none;align-items:center;justify-content:center;gap:10px;padding:28px;background:#041a1de6;backdrop-filter:blur(8px)}.lb.open{display:flex;animation:lbin .25s ease}@keyframes lbin{0%{opacity:0}to{opacity:1}}.lb-fig{display:flex;flex-direction:column;align-items:center;max-width:min(1120px,90vw);margin:0}.lb-img{max-width:100%;max-height:78vh;object-fit:contain;border-radius:14px;background:#04282c;box-shadow:0 0 0 2px var(--aqua),0 0 46px -2px #2fd6cfbf,0 30px 80px -20px #000000d9}.lb-cap{margin-top:20px;text-align:center;color:#fff;max-width:640px}.lb-cap small{display:block;color:var(--aqua);font-weight:800;text-transform:uppercase;letter-spacing:.2em;font-size:11px;margin-bottom:7px}.lb-cap span{font-family:Cormorant Garamond,serif;font-size:22px;font-weight:700;letter-spacing:-.01em}.lb-cap em{display:block;font-style:normal;color:#ffffff8c;font-size:13px;font-weight:600;margin-top:8px;letter-spacing:.05em}.lb-close{position:absolute;top:22px;right:26px;width:46px;height:46px;border-radius:50%;border:0;cursor:pointer;background:#ffffff1f;color:#fff;font-size:18px;transition:background .2s,transform .2s}.lb-close:hover{background:var(--coral);transform:rotate(90deg)}.lb-arrow{flex-shrink:0;width:54px;height:54px;border-radius:50%;border:0;cursor:pointer;background:#ffffff1f;color:#fff;font-size:28px;line-height:1;display:grid;place-items:center;transition:background .2s,transform .2s}.lb-arrow:hover{background:var(--aqua);color:#053b40;transform:scale(1.08)}@media (max-width:640px){.lb{padding:14px;gap:4px}.lb-arrow{position:absolute;bottom:20px;z-index:3}.lb-prev{left:20px}.lb-next{right:20px}.lb-img{max-height:66vh}.lb-cap span{font-size:18px}}.cal-wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:start}.cal-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:var(--shadow-sm)}.cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.cal-head b{font-family:Cormorant Garamond;font-size:24px;font-weight:800}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.dow{text-align:center;font-size:11px;font-weight:800;letter-spacing:.06em;color:var(--muted);padding:6px 0;text-transform:uppercase}.day{aspect-ratio:1;display:grid;place-items:center;border-radius:12px;font-weight:700;font-size:14px;background:var(--sand);border:0;font-family:inherit;transition:background .15s,color .15s,transform .12s}.day.empty{background:transparent}.day.booked{background:repeating-linear-gradient(135deg,#ffe4de,#ffe4de 5px,#ffd5cc 5px 10px);color:#c0432f;cursor:not-allowed;text-decoration:line-through;opacity:.85}.day.free{background:#e3f7f3;color:#0a6b73;cursor:pointer}.day.free:hover{background:#c4efe7;transform:translateY(-1px)}.day.today{outline:2.5px solid var(--coral);outline-offset:1px}.day.range{background:#3aa39d;color:#fff;border-radius:0}.day.sel{background:var(--ocean);color:#fff;box-shadow:0 6px 16px -6px #0a6b73b3}.day.sel.start{border-radius:12px 0 0 12px}.day.sel.end{border-radius:0 12px 12px 0}.day.sel.start.end{border-radius:12px}.stay-dates{color:var(--muted);font-size:15px}.stay-dates.set{color:var(--ink);font-weight:700;font-size:16px}.stay-dates.set b{color:var(--ocean)}.prow{display:flex;justify-content:space-between;font-weight:700;margin-top:9px}.prow:first-child{margin-top:0}.prow.muted{color:var(--muted);font-weight:600}.prow.total{border-top:1px dashed var(--line);margin-top:12px;padding-top:12px;font-family:Cormorant Garamond;font-weight:600;font-size:19px}.prow.save{color:var(--coral);font-weight:700;font-size:13px;margin-top:6px}#requestBtn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.cal-legend{display:flex;gap:20px;margin-top:20px;font-size:13px;font-weight:600;flex-wrap:wrap}.cal-legend span{display:flex;align-items:center;gap:8px;color:var(--muted)}.lg-box{width:15px;height:15px;border-radius:5px}.cal-side .rate-mini{background:var(--sand);border:1px solid var(--line);border-radius:18px;padding:22px;margin-bottom:14px}.cal-side h3{font-size:22px;margin-bottom:8px}@media (max-width:900px){.cal-wrap{grid-template-columns:1fr;gap:32px}}.reviews{background:var(--sand)}.rev-top{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;flex-wrap:wrap;margin-bottom:48px}.rev-score{display:flex;align-items:center;gap:18px}.rev-score .big{font-family:Cormorant Garamond;font-size:76px;font-weight:600;line-height:.9;color:var(--ocean)}.rev-score .stars{color:var(--coral);font-size:19px;letter-spacing:2px}.rev-score small{color:var(--muted);font-weight:600;font-size:14px}.rev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.rev-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column}.rev-card .stars{color:var(--coral);font-size:15px;letter-spacing:2px;margin-bottom:14px}.rev-card p{font-size:16px;color:var(--ink);margin-bottom:26px}.rev-who{display:flex;align-items:center;gap:12px;margin-top:auto}.rev-av{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-weight:800;color:#fff;font-size:16px}.rev-who b{display:block;font-size:15px}.rev-who span{font-size:13px;color:var(--muted)}@media (max-width:900px){.rev-grid{grid-template-columns:1fr}}.rate-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.rate-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px 26px;position:relative;transition:transform .2s,box-shadow .2s}.rate-card .amt{font-size:44px}.rate-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.rate-card.feat{border:2px solid var(--coral);box-shadow:var(--shadow)}.rate-card .tag{font-weight:800;letter-spacing:.14em;text-transform:uppercase;font-size:12px;color:var(--turq)}.rate-card.feat .tag{color:var(--coral)}.rate-card .amt{font-family:Cormorant Garamond;font-size:50px;font-weight:600;margin:8px 0 2px}.rate-card .amt small{font-size:16px;font-weight:600;color:var(--muted);font-family:Jost}.rate-card ul{list-style:none;margin:22px 0 0;display:grid;gap:12px}.rate-card li{display:flex;gap:10px;font-size:15px;color:var(--muted)}.rate-card li b{color:var(--ink);font-weight:700}.pill-tag{position:absolute;top:-13px;right:26px;background:var(--coral);color:#fff;font-size:11px;font-weight:800;letter-spacing:.08em;padding:6px 14px;border-radius:999px;text-transform:uppercase}@media (max-width:1000px){.rate-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:560px){.rate-grid{grid-template-columns:1fr}}.faq{max-width:840px;margin:0 auto}.faq-item{border-bottom:1px solid var(--line)}.faq-q{width:100%;text-align:left;background:none;border:none;cursor:pointer;padding:26px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;font-family:Cormorant Garamond;font-size:clamp(19px,2.4vw,25px);font-weight:700;color:var(--ink)}.faq-q .pm{width:34px;height:34px;flex-shrink:0;border-radius:50%;background:var(--sand);display:grid;place-items:center;font-size:22px;font-weight:400;color:var(--ocean);transition:transform .3s,background .3s}.faq-item.open .pm{transform:rotate(45deg);background:var(--coral);color:#fff}.faq-a{max-height:0;overflow:hidden;transition:max-height .4s ease}.faq-a p{padding:0 0 26px;color:var(--muted);font-size:16.5px;max-width:680px}.bookcta{background:linear-gradient(150deg,#0a6b73,#0e8e86);color:#fff;border-radius:38px;padding:66px 48px;display:grid;grid-template-columns:1fr auto;gap:44px;align-items:center;position:relative;overflow:hidden}.bookcta h2{color:#fff;font-size:clamp(34px,4.4vw,54px)}.bookcta p{color:#ffffffd9;font-size:18px;margin-top:14px;max-width:480px}.book-form{background:var(--cream);color:var(--ink);border-radius:22px;padding:26px;min-width:340px;box-shadow:var(--shadow)}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:11px}.field{display:block;border:1.5px solid var(--line);border-radius:13px;padding:10px 14px;background:#fff;margin-bottom:11px;transition:border-color .18s,box-shadow .18s}.field:focus-within{border-color:var(--ocean);box-shadow:0 0 0 3px #0a6b731f}.field>span,.field label{display:block;font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.field .val{font-weight:700;font-size:15px}.field input,.field select,.field textarea{width:100%;border:0;background:transparent;font:inherit;font-weight:700;font-size:15px;color:var(--ink);outline:none;padding:0;margin-top:3px;display:block;cursor:pointer}.field textarea{cursor:text;resize:vertical;min-height:64px;line-height:1.5;font-weight:600}.field input[type=email]{cursor:text}.field input::placeholder{color:var(--muted);font-weight:600}.field select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%230a6b73' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 2px center;padding-right:18px}.field input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.6}.book-form .btn-primary{margin-top:4px}.book-form.sent .field,.book-form.sent .btn-primary{opacity:.55;pointer-events:none}#bookNote.ok{color:var(--ocean);font-weight:700}.book-form .btn-primary{width:100%;justify-content:center}.note{text-align:center;font-size:12px;color:var(--muted);margin-top:12px}@media (max-width:900px){.bookcta{grid-template-columns:1fr;padding:44px 26px}.book-form{min-width:0}}.loc-grid{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}.map{border-radius:24px;overflow:hidden;box-shadow:var(--shadow-sm);position:relative;min-height:340px;background:linear-gradient(160deg,#cdefe9,#a9e0d8)}.map .pin{position:absolute;top:44%;left:48%;transform:translate(-50%,-100%);z-index:3}.map .pin .dot{width:22px;height:22px;background:var(--coral);border:4px solid #fff;border-radius:50%;box-shadow:0 6px 16px #0000004d}.map .lbl{position:absolute;top:calc(44% + 12px);left:48%;transform:translate(-50%);background:#fff;padding:6px 13px;border-radius:9px;font-weight:800;font-size:13px;box-shadow:var(--shadow-sm);white-space:nowrap}.map svg{position:absolute;inset:0;width:100%;height:100%;opacity:.5}.near{display:grid;gap:12px;margin-top:24px}.near-item{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px dashed var(--line);font-weight:700}.near-item span{color:var(--muted);font-weight:600}@media (max-width:900px){.loc-grid{grid-template-columns:1fr;gap:34px}}footer{background:var(--ocean-deep);color:#ffffffb8;padding:64px 0 36px}.foot-in{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;align-items:flex-start}footer .logo{color:#fff;margin-bottom:12px}.foot-links{display:flex;gap:44px;flex-wrap:wrap}.foot-col b{color:#fff;display:block;margin-bottom:12px;font-size:14px;letter-spacing:.05em}.foot-col a{display:block;font-size:14px;margin-bottom:8px;color:#ffffffb3}.foot-col a:hover{color:#fff}.foot-bottom{border-top:1px solid rgba(255,255,255,.14);margin-top:44px;padding-top:24px;font-size:13px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}.mock-note{text-align:center;font-size:12px;color:#ffffff80;margin-top:8px}.foot-logo{height:58px;width:auto}.nav-cta .btn-ink,.bar .btn-ink{font-weight:400;letter-spacing:.08em;text-transform:uppercase;font-size:13px}.rate-card .amt{font-weight:600;letter-spacing:-.01em}.rate-card .tag,.rev-score small,.cal-legend,.field>span,.field label,.dow,.note{font-family:Jost,sans-serif}.hero .badge{font-weight:300;letter-spacing:.02em}.faq-q{font-weight:600}.gsections{display:flex;flex-direction:column}.gsection{display:grid;grid-template-columns:250px 1fr;gap:44px;align-items:start;padding:26px 0;border-top:1px solid var(--line)}.gsection:first-child{border-top:0}.gsec-side{position:sticky;top:104px;align-self:start}.gsec-title{font-family:Cormorant Garamond,Georgia,serif;font-weight:600;font-size:clamp(26px,3vw,40px);letter-spacing:-.01em;color:var(--ink);line-height:1.05}.gsec-sub{margin-top:12px;color:var(--muted);font-size:13.5px;line-height:1.55;max-width:220px}.gsec-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.gtile{position:relative;display:block;width:100%;margin:0;padding:0;border:0;cursor:pointer;border-radius:16px;overflow:hidden;background:linear-gradient(135deg,#0a6b73,#2fd6cf);aspect-ratio:4/3;box-shadow:var(--shadow-sm);transition:transform .5s cubic-bezier(.2,.7,.2,1),filter .5s,box-shadow .5s}.gtile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.gsec-grid:hover .gtile{filter:brightness(.6) saturate(.85)}.gsec-grid .gtile:hover{filter:brightness(1.08) saturate(1.05);transform:scale(1.01);box-shadow:0 30px 60px -22px #12b6b699,0 0 0 2px #2fd6cf8c}.gsec-grid .gtile:hover img{transform:scale(1.06)}.gsec-grid .gtile:only-child,.gsec-grid .gtile:first-child:nth-last-child(odd){grid-column:span 2;aspect-ratio:16/9}@media (max-width:820px){.gsection{grid-template-columns:1fr;gap:16px;padding:18px 0}.gsec-side{position:static;top:auto}.gsec-sub{max-width:none}.gsec-grid:hover .gtile{filter:none}}.gpreview{position:relative;display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;gap:12px}.gpreview .gtile{aspect-ratio:auto;height:100%}.gpreview .gp-big{grid-column:span 2;grid-row:span 2}.gp-actions{margin-top:18px;display:flex;justify-content:flex-start}.gp-all{display:inline-flex;align-items:center;gap:10px;background:#fff;color:var(--ink);border:0;border-radius:12px;padding:14px 24px;font-family:Jost,sans-serif;font-weight:700;font-size:15px;cursor:pointer;box-shadow:0 0 0 2px var(--aqua),0 0 22px -2px #2fd6cfcc;transition:transform .18s,box-shadow .18s;animation:gpGlow 2.6s ease-in-out infinite}@keyframes gpGlow{0%,to{box-shadow:0 0 0 2px var(--aqua),0 0 16px -3px #2fd6cf99}50%{box-shadow:0 0 0 2px var(--aqua),0 0 30px 2px #2fd6cf}}.gp-all:hover{transform:translateY(-2px);box-shadow:0 0 0 2px var(--aqua),0 0 34px 4px #2fd6cf}.gp-grid-ic{width:15px;height:15px;display:inline-block;background:linear-gradient(var(--ink),var(--ink)) 0 0/6px 6px no-repeat,linear-gradient(var(--ink),var(--ink)) 9px 0/6px 6px no-repeat,linear-gradient(var(--ink),var(--ink)) 0 9px/6px 6px no-repeat,linear-gradient(var(--ink),var(--ink)) 9px 9px/6px 6px no-repeat}#galleryAll{margin-top:28px}@media (max-width:820px){.gpreview{grid-auto-rows:150px}}@media (max-width:560px){.gpreview{grid-template-columns:repeat(2,1fr)}.gpreview .gp-big{grid-column:span 2;grid-row:span 1}}.gsections[hidden]{display:none}.cur-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.cur-row label{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.cur-sel{font-family:inherit;font-size:14px;font-weight:700;color:var(--ink);background:#fff;border:1.5px solid var(--line);border-radius:11px;padding:8px 12px;cursor:pointer}.cur-sel:focus{outline:none;border-color:var(--ocean);box-shadow:0 0 0 3px #0a6b731f}.quote-recap{background:#e3f7f3;border:1px solid #bfeee6;color:var(--ink);border-radius:12px;padding:11px 14px;font-size:14px;margin-bottom:12px}
