.mw-content-page{font-family:'Poppins',system-ui,sans-serif;color:#1C3434;-webkit-font-smoothing:antialiased;}
.mw-content-page .wrap{max-width:1240px;margin:0 auto;padding:0 28px;}
.mw-content-page h1,.mw-content-page h2,.mw-content-page h3,.mw-content-page .serif{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;text-wrap:balance;margin:0;}
.mw-content-page a{color:#27666A;}
.mw-content-page img{max-width:100%;display:block;object-fit:cover;}
.mw-content-page .btn{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:14px;padding:11px 24px;border-radius:6px;background:#27666A;color:#fff;text-decoration:none;min-height:44px;}
.mw-content-page .btn:hover{background:#1C3434;}
.mw-content-page .btn-ghost{background:transparent;color:#27666A;border:1.5px solid #71BFBE;}
.mw-content-page .btn-ghost:hover{background:#F1FAF9;}

.hub-hero{padding:56px 0 40px;}
.hub-hero .eyebrow{font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#27666A;display:block;margin-bottom:14px;}
.hub-hero h1{font-size:clamp(30px,4vw,44px);line-height:1.1;margin-bottom:16px;}
.hub-hero p{font-size:16px;line-height:1.7;color:#4A6260;max-width:60ch;margin:0 0 24px;}
.hub-hero .actions{display:flex;gap:12px;flex-wrap:wrap;}

.visit-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;padding:40px 0;}
.visit-card{background:#F1FAF9;border-radius:12px;padding:26px 24px;}
.visit-card h3{font-size:20px;margin-bottom:12px;color:#27666A;}
.visit-card p{margin:0 0 6px;font-size:14px;line-height:1.6;color:#1C3434;}
.visit-card .flag{font-style:italic;color:#4A6260;font-size:13px;}
.visit-row{display:flex;align-items:flex-start;gap:10px;margin:0 0 12px;}
.visit-row img{width:18px;height:18px;flex:none;margin-top:2px;}
.visit-row p{margin:0;}

.hub-services{padding:20px 0 40px;}
.hub-service-group{margin-bottom:24px;}
.hub-service-group h4{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#27666A;margin-bottom:10px;}
.hub-service-group p{margin:0;font-size:15px;line-height:1.8;color:#1C3434;}

.hub-testimonial{background:#CBD9BE;border-radius:12px;padding:32px 28px;margin:20px 0 48px;}
.hub-testimonial p{margin:0;font-style:italic;color:#1C3434;}

@media(max-width:760px){.visit-grid{grid-template-columns:1fr;}}


.hub-bento{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:140px;gap:12px;margin:24px 0 40px;}
.hub-bento .cell{border-radius:10px;position:relative;}
.hub-bento .cell:not(.b-copy){overflow:hidden;}
.hub-bento .cell img{width:100%;height:100%;object-fit:cover;display:block;}
.hub-bento .b-copy{grid-column:1/3;grid-row:1/4;background:#27666A;color:#fff;padding:24px;display:flex;flex-direction:column;justify-content:center;gap:12px;border-radius:10px;}
.hub-bento .b-copy h1{color:#fff;font-size:clamp(24px,3vw,34px);margin:0;}
.hub-bento .b-copy p{color:rgba(255,255,255,.85);margin:0;font-size:14.5px;line-height:1.6;}
.hub-bento .b-copy .btn-ghost{color:#fff;border-color:rgba(255,255,255,.5);}
.hub-bento .b-copy .btn-ghost:hover{background:rgba(255,255,255,.12);}
.hub-bento .b-img1{grid-column:3/5;grid-row:1/3;}
.hub-bento .b-img2{grid-column:3/4;grid-row:3/4;}
.hub-bento .b-img3{grid-column:4/5;grid-row:3/4;}

.hub-service-photos{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px;margin:20px 0 40px;}
.hub-service-card{border-radius:12px;overflow:hidden;background:#F1FAF9;}
a.hub-service-card{display:block;text-decoration:none;color:inherit;transition:box-shadow .2s ease,transform .2s ease;}
a.hub-service-card:hover{box-shadow:0 16px 32px -18px rgba(28,52,52,.35);transform:translateY(-2px);}
.hub-service-card img{width:100%;height:220px;object-fit:cover;display:block;}
.hub-service-card .body{padding:20px;}
.hub-service-card h4{margin:0 0 8px;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#27666A;}
.hub-service-card .credit-tag{display:inline-block;font-size:11.5px;font-weight:700;color:#27666A;background:#fff;border:1px solid #CBD9BE;padding:3px 10px;border-radius:12px;margin:0 0 8px;}
.hub-service-card p{margin:0 0 8px;font-size:14px;line-height:1.7;color:#1C3434;}
.hub-service-card .link{display:inline-block;font-size:12.5px;font-weight:700;color:#27666A;}
.hub-service-card .link:after{content:" \2192";}

.hub-service-item-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:20px;}
.hub-service-item{background:#fff;border:1px solid #CBD9BE;border-radius:10px;padding:20px 24px;}
.hub-service-item h5{margin:0 0 6px;font-size:14px;font-weight:600;color:#27666A;}
.hub-service-item h5 a{color:#27666A;text-decoration:none;}
.hub-service-item h5 a:after{content:" \2192";}
.hub-service-item h5 a:hover{text-decoration:underline;}
.hub-service-item p{margin:0;font-size:13px;line-height:1.6;color:#4A6260;}
@media(max-width:760px){.hub-service-item-grid{grid-template-columns:1fr;}}

.hub-map{border-radius:10px;overflow:hidden;margin-top:12px;}

.hub-reviews{background:#CBD9BE;border-radius:12px;padding:28px 24px;margin:20px 0 40px;}
.hub-reviews .flag{font-size:12px;color:#4A6260;font-style:italic;margin-top:10px;}

.hub-faq{margin:20px 0 40px;}
.hub-faq-item{border-bottom:1px solid #CBD9BE;padding:6px 0;}
.hub-faq-item summary{cursor:pointer;list-style:none;font-weight:600;font-size:15px;color:#27666A;padding:14px 10px;display:flex;justify-content:space-between;align-items:center;gap:16px;}
.hub-faq-item summary:after{content:"+";font-size:20px;font-weight:400;color:#71BFBE;flex:none;}
.hub-faq-item[open] summary:after{content:"–";}
.hub-faq-item summary::-webkit-details-marker{display:none;}
.hub-faq-item p{margin:0 10px 16px;font-size:14px;line-height:1.7;color:#4A6260;}

.hub-seo{font-size:14.5px;line-height:1.8;color:#4A6260;max-width:75ch;margin:0;}

.hub-section{padding:48px 28px;}
.hub-section.tint{background:#F1FAF9;}
.hub-section .section-head{margin-bottom:24px;}
.hub-section .eyebrow{font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#27666A;display:block;margin-bottom:10px;}
.hub-section .visit-grid,.hub-section .hub-services,.hub-section .hub-service-photos{margin:0;padding:0;}
.hub-section .hub-reviews,.hub-section .hub-faq{margin:0;}

@media(max-width:760px){
  .hub-bento{grid-template-columns:1fr;grid-auto-rows:auto;}
  .hub-bento .b-copy,.hub-bento .b-img1,.hub-bento .b-img2,.hub-bento .b-img3{grid-column:auto;grid-row:auto;}
  .hub-bento .b-img1,.hub-bento .b-img2,.hub-bento .b-img3{height:200px;}
  .hub-service-photos{grid-template-columns:1fr;}
}

.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:24px 0;}
.pricing-card{background:#fff;border:1px solid #CBD9BE;border-radius:14px;padding:30px 26px 26px;position:relative;display:flex;flex-direction:column;gap:12px;}
.pricing-card.recommended{border-color:#27666A;border-width:2px;box-shadow:0 20px 40px -24px rgba(28,52,52,.4);}
.pricing-card .badge-ribbon{position:absolute;top:-13px;left:24px;background:#27666A;color:#fff;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 14px;border-radius:20px;}
.pricing-card h3{font-size:19px;color:#27666A;margin:0;}
.pricing-card .price{font-family:'Cormorant Garamond',Georgia,serif;font-size:32px;color:#1C3434;margin:0;line-height:1.2;}
.pricing-card .price small{font-size:13px;font-weight:400;color:#4A6260;font-family:'Poppins',system-ui,sans-serif;}
.pricing-card .rate{font-size:12.5px;color:#4A6260;margin:0;}
.pricing-card ul{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:9px;}
.pricing-card li{font-size:13.5px;color:#1C3434;line-height:1.5;padding-left:20px;position:relative;}
.pricing-card li:before{content:"\2713";position:absolute;left:0;color:#27666A;font-weight:700;}
.pricing-card .btn{margin-top:14px;justify-content:center;}
@media(max-width:900px){.pricing-grid{grid-template-columns:1fr;}}

.credits-table-wrap{overflow-x:auto;margin:20px 0;}
.credits-table{width:100%;border-collapse:collapse;}
.credits-table th,.credits-table td{text-align:left;padding:12px 14px;border-bottom:1px solid #CBD9BE;font-size:14px;}
.credits-table th{color:#27666A;font-weight:700;font-size:12px;letter-spacing:.05em;text-transform:uppercase;}
