/* Native article system; scoped away from the approved Home and bespoke pages. */
.vg-guide-at-a-glance { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:20px 0 16px; }
.vg-guide-at-a-glance > div { padding:15px 16px; border:1px solid #cfe0cf; border-top:3px solid #429954; border-radius:8px; background:#edf4e9; }
.vg-guide-at-a-glance span { display:block; color:#50715c; font-size:16px; }
.vg-guide-at-a-glance strong { display:block; margin-top:5px; color:#174e2a; font-size:24px; line-height:1.15; }
.vg-guide-actions { display:flex; flex-wrap:wrap; gap:10px; margin:0 0 24px; }
.vg-guide-actions a { display:inline-flex; align-items:center; min-height:44px; padding:10px 15px; border:1px solid #287441; border-radius:7px; font-size:17px; text-decoration:none; }
body.vgreen-theme .vg-guide-actions a:first-child { background:#176639; color:#fff; }
.vg-guide-actions a:hover { box-shadow:0 3px 12px #17362818; }
@media(max-width:480px) { .vg-guide-at-a-glance { grid-template-columns:1fr; gap:8px; } .vg-guide-at-a-glance > div { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:10px 13px; border-top-width:1px; border-left:3px solid #429954; } .vg-guide-at-a-glance strong { margin:0; font-size:21px; } .vg-guide-actions a { width:100%; } }
.vg-contact-layout { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); gap:32px; margin-top:26px; align-items:start; }
.vg-contact-panel { background:#fff; border:1px solid #d3e2d4; border-radius:12px; padding:28px; }
.vg-contact-info { padding:24px; border-radius:12px; background:#edf4e9; }
.vg-contact-info > img { display:block; width:100%; max-width:400px!important; height:auto!important; max-height:none; object-fit:contain; margin:0 auto 24px; border-radius:8px; }
.vg-contact-info a { overflow-wrap:anywhere; }
.vg-contact-info details { border-top:1px solid #c7dacb; padding:14px 0; }
.vg-contact-info summary { cursor:pointer; font-size:21px; font-weight:700; line-height:1.2; }
body.vgreen-legacy-page .legacy-article .vg-contact-info details p { font-size:18px!important; margin:12px 0; }
.vg-contact label { display:block; font-size:19px; font-weight:700; margin:18px 0 7px; }
.vg-contact label span { font-weight:400; font-size:16px; }
.vg-contact input,.vg-contact select,.vg-contact textarea { width:100%; border:1px solid #b6cdbd; border-radius:6px; padding:11px 12px; background:#fbfcfa; color:#193f30; min-height:46px; }
.vg-contact textarea { resize:vertical; }
.vg-contact-fields { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.vg-contact-actions { display:flex; gap:12px; flex-wrap:wrap; }
.vg-contact-actions button { border:1px solid #17683b; border-radius:6px; padding:12px 18px; background:#17683b; color:#fff; font-weight:700; cursor:pointer; }
.vg-contact-actions button+button { background:#fff; color:#17683b; }
.vg-contact-actions button:disabled { opacity:.55; cursor:wait; }
.vg-contact-trap { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
body.vgreen-legacy-page .legacy-article .vg-contact-notice { font-size:16px!important; line-height:1.4!important; margin:15px 0; }
.vg-contact input:focus-visible,.vg-contact select:focus-visible,.vg-contact textarea:focus-visible,.vg-contact button:focus-visible { outline:3px solid #dbb94e; outline-offset:2px; }
@media(max-width:760px) { .vg-contact-layout { grid-template-columns:minmax(0,1fr); } .vg-contact-fields { grid-template-columns:minmax(0,1fr); gap:0; } .vg-contact-panel,.vg-contact-info { padding:20px; } }
body.vgreen-legacy-page .legacy-article .vg-editorial { color:#23483b; }
body.vgreen-legacy-page .legacy-article .vg-editorial p { margin:0 0 14px; font-size:18px!important; line-height:1.5!important; text-align:left!important; }
body.vgreen-legacy-page .legacy-article .vg-editorial .podtitle { margin:25px 0 14px; padding:0; }
body.vgreen-legacy-page .legacy-article .vg-editorial hr { margin:22px 0; }
body.vgreen-legacy-page .legacy-article .vg-editorial img { border-radius:8px; }
body.vgreen-legacy-page .legacy-article .vg-editorial blockquote,
body.vgreen-legacy-page .legacy-article .vg-editorial .box3 { margin:18px 0; padding:18px 22px; border:1px solid #d6e4d9; border-left:3px solid #359557; border-radius:0 10px 10px 0; background:#f0f6ee; }
body.vgreen-legacy-page .legacy-article .vg-editorial .gantry-width-container { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
body.vgreen-legacy-page .legacy-article .vg-editorial [class*="gantry-width-"] { min-width:0; width:auto!important; margin:0; }
body.vgreen-legacy-page .legacy-article .vg-editorial .gantry-width-spacer { padding:0; }
.vg-price-grid,.vg-benefits,.vg-research-grid,.vg-deadlines { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin:20px 0; }
.vg-price-card { display:flex; flex-direction:column; background:#fff; border:1px solid #d1e2d4; border-radius:12px; overflow:hidden; box-shadow:0 8px 24px #123f2610; }
.vg-price-heading { padding:20px 22px 12px; }
body.vgreen-legacy-page .legacy-article .vg-price-heading h4 { margin:0 0 8px; font-size:25px; }
.vg-price { padding:10px 22px; background:#eaf4e7; font-size:34px; font-weight:700; }
.vg-price-feature { padding:12px 22px 0; font-size:17px; line-height:1.4; }
.vg-price-action { margin-top:auto; padding:18px 22px; }
body.vgreen-legacy-page .legacy-article .vg-benefits { padding:0; list-style:none; }
body.vgreen-legacy-page .legacy-article .vg-benefits > li { padding:16px 18px; margin:0; border:1px solid #d7e5d7; border-radius:8px; background:#fff; font-size:18px!important; line-height:1.45!important; }
.vg-benefits > li::before { content:'✓'; color:#238642; float:left; margin-right:10px; font-weight:bold; }
.vg-layout-cards { display:grid; gap:16px; margin:18px 0; }
.vg-layout-row { display:flex; gap:22px; padding:20px; border:1px solid #d7e5d7; border-radius:10px; background:#fff; align-items:flex-start; }
.vg-layout-cell { flex:1; min-width:0; }
.vg-layout-cell:has(img):not(:last-child) { flex:0 1 32%; }
.vg-layout-cell p:last-child { margin-bottom:0!important; }
.vg-hotel-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.vg-hotel-grid .vg-layout-row { display:block; padding:18px; }
.vg-hotel-grid .vg-layout-cell { width:100%; }
.vg-hotel-grid .vg-hotel-area { grid-column:1/-1; padding:12px 18px; background:#eaf3e5; }
body.vgreen-legacy-page .legacy-article .vg-hotel-grid img { width:100%; height:150px!important; object-fit:cover; }
.vg-hotel-grid .vg-disclosure { margin-bottom:0; }
.vg-hotel-grid .vg-disclosure > summary { font-size:23px; padding:14px; }
.vg-related > summary { display:none; }
@media(max-width:980px) { .vg-related > summary { display:block; cursor:pointer; padding:16px 22px; background:#eaf3e5; font-size:22px; font-weight:700; } .vg-related > summary::after { content:' +'; } .vg-related[open] > summary::after { content:' −'; } }
body.vgreen-legacy-page .legacy-article .vg-layout-cell img { max-width:100%; height:auto; }
.vg-disclosure { margin:12px 0; background:#fff; border:1px solid #cedfd1; border-radius:10px; overflow:hidden; scroll-margin-top:145px; }
.vg-disclosure > summary { cursor:pointer; padding:18px 22px; color:#175638; font-size:24px; font-weight:700; line-height:1.2; list-style:none; display:flex; justify-content:space-between; align-items:center; gap:16px; }
.vg-disclosure > summary::-webkit-details-marker { display:none; }
.vg-disclosure > summary::after { content:'+'; flex-shrink:0; font:400 26px/1 Georgia,serif; }
.vg-disclosure[open] > summary::after { content:'−'; }
.vg-disclosure[open] > summary { background:#edf5e9; }
.vg-detail-copy { padding:20px 22px; }
.vg-detail-copy > :last-child { margin-bottom:0!important; }
.vg-disclosure summary:focus-visible,.vg-reading-controls button:focus-visible { outline:3px solid #c89d2a; outline-offset:-3px; }
.vg-reading-controls { display:flex; justify-content:flex-end; gap:10px; margin:12px 0; }
.vg-reading-controls button { border:1px solid #a9c8ae; border-radius:30px; background:#fff; color:#155732; padding:8px 16px; cursor:pointer; font:600 17px/1.3 'Cormorant Garamond',serif; }
.vg-research-card { padding:18px 20px; border-top:3px solid #4d995d; background:#fff; border-radius:0 0 9px 9px; font-size:18px; line-height:1.45; box-shadow:0 5px 18px #183b2110; }
.vg-research-card strong:first-of-type { display:inline; color:#126539; font-size:22px; }
.vg-deadline { padding:18px; border:1px solid #cbded0; border-radius:10px; background:#fff; font-size:18px; }
.vg-deadline .date1,.vg-deadline .date2,.vg-deadline .date3 { float:none!important; display:inline!important; font-size:24px!important; line-height:1.25!important; padding:0!important; margin:0 5px 0 0!important; }
.vg-deadline .date-surround { display:inline!important; float:none!important; }
.vg-deadline .sgem-deadline-extension { display:block; margin-top:8px; font-size:14px!important; }
.vg-deadlines > hr,.vg-deadlines > p { grid-column:1/-1; }
body.vgreen-legacy-page .legacy-article .vg-editorial li { font-size:18px!important; line-height:1.5!important; }
@media(max-width:640px) {
 .vg-price-grid,.vg-benefits,.vg-research-grid,.vg-deadlines,.vg-hotel-grid { grid-template-columns:minmax(0,1fr); }
 body.vgreen-legacy-page .legacy-article .vg-editorial .gantry-width-container { grid-template-columns:minmax(0,1fr); }
 .vg-layout-row { flex-direction:column; gap:12px; padding:18px; }
 .vg-layout-cell { width:100%; }
 .vg-disclosure > summary { font-size:22px; padding:16px 18px; }
 .vg-detail-copy { padding:18px; }
}
@media print { .vg-reading-controls { display:none!important; } .vg-disclosure > .vg-detail-copy { display:block!important; } }
