/* Giftovation Studio v3 — public editable sections + WordPress menu header/footer. */
.gvs-site-header,.gvs-site-footer,.gvs-section{--gvs-forest:var(--gvv-forest,#173b34);--gvs-dark:#102c26;--gvs-gold:var(--gvv-gold,#d5b47c);--gvs-ivory:var(--gvv-ivory,#faf7f0);--gvs-body:'DM Sans',Arial,sans-serif;--gvs-serif:'Playfair Display',Georgia,serif;box-sizing:border-box}
.gvs-site-header *,.gvs-site-footer *,.gvs-section *{box-sizing:border-box}
.gvs-site-header{position:relative;z-index:90;background:var(--gvs-ivory);font-family:var(--gvs-body);border-bottom:1px solid #d9ded4}
.gvs-announcement{padding:9px 20px;text-align:center;font-size:10px;letter-spacing:.16em;background:var(--gvs-forest);color:#fff;text-transform:uppercase}
.gvs-head-inner{width:min(1240px,calc(100% - 80px));margin:auto;display:flex;align-items:center;gap:30px;min-height:95px}
.gvs-brand{flex:0 0 auto;min-width:170px}
.gvs-brand img.custom-logo{width:auto;max-height:68px;max-width:230px;object-fit:contain}
.gvs-brand-text{font:500 29px/1.1 var(--gvs-body);color:var(--gvs-forest)!important;text-decoration:none!important;letter-spacing:-1.5px}
.gvs-primary-nav{margin-left:auto}
.gvs-menu-list{display:flex;align-items:center;list-style:none!important;gap:24px;margin:0!important;padding:0!important}
.gvs-menu-list li{position:relative;list-style:none;margin:0;padding:0}
.gvs-menu-list a{display:block;padding:10px 0;color:var(--gvs-forest);font:500 12px/1.45 var(--gvs-body);text-decoration:none;white-space:nowrap}
.gvs-menu-list a:hover,.gvs-menu-list .current-menu-item>a,.gvs-menu-list .current_page_item>a{color:#8c754d;text-decoration:underline;text-underline-offset:5px}
.gvs-menu-list .sub-menu{position:absolute;top:100%;left:-18px;min-width:200px;z-index:99;background:#fff;padding:12px 18px!important;list-style:none;box-shadow:0 9px 28px #1b3b3024;display:none;margin:0;border:1px solid #e3e4db}
.gvs-menu-list li:hover>.sub-menu,.gvs-menu-list li:focus-within>.sub-menu{display:block}
.gvs-menu-list .sub-menu li{list-style:none}
.gvs-menu-list .sub-menu a{white-space:normal;padding:9px 0}
.gvs-header-cta{background:var(--gvs-forest);padding:15px 21px;color:#fff!important;text-decoration:none!important;white-space:nowrap;font:500 12px var(--gvs-body)}
.gvs-header-cta:hover{background:var(--gvs-dark)}
.gvs-mobile-toggle{display:none;border:1px solid var(--gvs-forest);padding:10px;background:transparent;color:var(--gvs-forest);font:500 12px var(--gvs-body);cursor:pointer}
.gvs-site-footer{background:var(--gvs-dark);color:#e4ede4;font-family:var(--gvs-body)}
.gvs-footer-inner{max-width:1240px;width:calc(100% - 80px);margin:auto;padding:65px 0 20px}
.gvs-footer-grid{display:grid;grid-template-columns:1.4fr .8fr 1fr;gap:60px;margin-bottom:60px}
.gvs-footer-brand{font-size:30px;letter-spacing:-1px;color:#f6f0e6;margin:0 0 18px}
.gvs-site-footer h3{font:500 11px var(--gvs-body);color:var(--gvs-gold);text-transform:uppercase;letter-spacing:.12em;margin:5px 0 20px}
.gvs-site-footer p{color:#cbd8ce;line-height:1.85;font-size:13px;margin:0 0 11px}
.gvs-site-footer a{color:#f4f0e8!important;text-decoration:none}
.gvs-site-footer a:hover{text-decoration:underline}
.gvs-site-footer .gvs-menu-list{display:block}
.gvs-site-footer .gvs-menu-list a{color:#dce8dc!important;white-space:normal;padding:3px 0;font-size:13px}
.gvs-site-footer .gvs-menu-list .sub-menu{position:static;box-shadow:none;border:0;background:none;display:block;padding:0 0 0 16px!important}
.gvs-footer-base{border-top:1px solid #41544a;padding-top:20px;display:flex;flex-wrap:wrap;gap:15px 25px;font-size:11px;color:#bbcec1}
.gvs-footer-base>span:last-child{margin-left:auto}
.gvs-section{display:block;margin:0!important;padding:95px 0;color:#28382f;font-family:var(--gvs-body);background:var(--gvs-ivory);min-width:0}
.gvs-section.gvs-bg-white{background:#fff}
.gvs-section.gvs-bg-sage{background:#eeeee5}
.gvs-section.gvs-bg-green{background:var(--gvs-dark);color:#d8e5d9}
.gvs-wrap{width:min(1240px,calc(100% - 80px));margin:0 auto}
.gvs-section h1,.gvs-section h2,.gvs-section h3{font-family:var(--gvs-serif);font-weight:400;line-height:1.14;letter-spacing:-.038em;color:var(--gvs-forest);margin:0 0 24px}
.gvs-section h1{font-size:clamp(44px,5.2vw,79px)}
.gvs-section h2{font-size:clamp(32px,3.8vw,55px)}
.gvs-section h3{font-size:clamp(23px,2.5vw,31px)}
.gvs-section h1 em,.gvs-section h2 em{color:#758269;font-weight:400}
.gvs-section.gvs-bg-green h1,.gvs-section.gvs-bg-green h2,.gvs-section.gvs-bg-green h3{color:#fcf6e9}
.gvs-section.gvs-bg-green h1 em,.gvs-section.gvs-bg-green h2 em{color:var(--gvs-gold)}
.gvs-section p{font-size:15px;line-height:1.9;color:#5a695e;margin:0 0 15px}
.gvs-section.gvs-bg-green p{color:#d7e0d2}
.gvs-eyebrow{font:500 10px/1.7 var(--gvs-body);letter-spacing:.18em;text-transform:uppercase;color:var(--gvs-forest);margin-bottom:23px}
.gvs-section.gvs-bg-green .gvs-eyebrow{color:var(--gvs-gold)}
.gvs-split,.gvs-story-grid,.gvs-quote-grid,.gvs-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,90px);align-items:center}
.gvs-split-copy{min-width:0}
.gvs-split-copy>p{max-width:440px}
.gvs-type-hero{padding:58px 0 62px}
.gvs-type-hero .gvs-split-art{min-height:490px}
.gvs-split-art{min-width:0}
.gvs-image{display:block;width:100%;max-width:100%;height:500px;object-fit:cover}
.gvs-hero-image{height:clamp(450px,52vw,645px);border-radius:47% 47% 2px 2px}
.gvs-image-placeholder{height:400px;display:grid;place-items:center;background:#dde5d8;color:#abb6a9;font:100px var(--gvs-serif)}
.gvs-reverse .gvs-split-art{order:-1}
.gvs-button-row{display:flex;flex-wrap:wrap;gap:14px;margin:25px 0}
.gvs-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:48px;padding:13px 22px;background:var(--gvs-forest);color:#fff!important;text-decoration:none!important;font:500 13px/1.4 var(--gvs-body)}
.gvs-button:hover{background:#0d2c23}
.gvs-button-outline{background:transparent;border:1px solid #9daa9c;color:var(--gvs-forest)!important}
.gvs-bg-green .gvs-button{background:var(--gvs-gold);color:#163c32!important}
.gvs-bg-green .gvs-button-outline{color:#faf6eb!important;border-color:#faf6eb;background:transparent}
.gvs-note{font-size:12px!important;margin-top:35px!important}
.gvs-type-strip{padding:25px 0;border-block:1px solid #d5dccc}
.gvs-strip-text{text-align:center;text-transform:uppercase;font-size:12px;letter-spacing:.095em;line-height:1.8}
.gvs-type-intro{padding:90px 0 60px;border-bottom:1px solid #d6ded3}
.gvs-intro{max-width:980px}.gvs-intro p{max-width:760px;font-size:17px}
.gvs-centered{text-align:center;max-width:890px;margin-inline:auto}
.gvs-centered p{max-width:750px;margin:0 auto 22px}
.gvs-gifts-grid,.gvs-cards,.gvs-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:42px}
.gvs-gift-card img,.gvs-gift-fallback{width:100%;height:275px;object-fit:cover;display:block;background:#e8eae2;margin-bottom:22px}
.gvs-gift-fallback{display:grid;place-items:center;font-size:54px;color:#98aa9d}
.gvs-gift-card h3{margin:0 0 12px;font-size:26px}
.gvs-gift-card p{font-size:13px}
.gvs-gift-card a{text-decoration:none;color:inherit}
.gvs-gift-card small{font-size:11px;color:#7b8b7c}
.gvs-bottom-button{margin-top:35px}.gvs-bottom-button .gvs-button-row{justify-content:center}
.gvs-story-grid{gap:70px}
.gvs-story-badge{background:var(--gvs-forest);padding:50px;min-height:450px;display:flex;flex-direction:column;justify-content:center}
.gvs-story-badge span{font:11px var(--gvs-body);letter-spacing:.16em;color:var(--gvs-gold)}
.gvs-story-badge strong{color:var(--gvs-gold);font:italic 140px/1.3 var(--gvs-serif);text-align:center}
.gvs-story-badge h3{color:#fff;font-size:28px;max-width:360px;margin:0}
.gvs-cards{gap:40px}.gvs-card{border-top:1px solid #c5cfc2;padding-top:25px}
.gvs-card-count{display:block;color:#93784e;font:italic 27px var(--gvs-serif);margin-bottom:18px}
.gvs-card h3{font-size:26px}.gvs-card p{font-size:13px}
.gvs-gallery figure{margin:0}.gvs-gallery img{width:100%;height:285px;object-fit:cover}.gvs-gallery figcaption{font-size:12px;padding-top:10px;color:#586a5f}
.gvs-type-cta{text-align:center;padding:85px 0}.gvs-type-cta .gvs-button-row{justify-content:center}
.gvs-type-text .gvs-text-content{max-width:850px}
.gvs-quote-grid{grid-template-columns:.65fr 1.35fr;align-items:start}
.gvs-form-panel{background:#fff;padding:30px;box-shadow:0 8px 30px #123b260d}
.gvs-contact-panel{background:#e9ede4;padding:43px}.gvs-contact-panel h3{font-size:35px}
.gvs-preview-active{outline:4px solid #c2994c!important;outline-offset:-4px}
@media(max-width:1100px){.gvs-head-inner{gap:18px}.gvs-menu-list{gap:14px}.gvs-brand{min-width:130px}.gvs-header-cta{padding:13px}.gvs-split,.gvs-story-grid{gap:32px}}
@media(max-width:900px){.gvs-head-inner{width:calc(100% - 48px);flex-wrap:wrap;min-height:79px}.gvs-primary-nav{order:4;width:100%;margin:0;display:none;padding-bottom:22px}.gvs-primary-nav.is-open{display:block}.gvs-mobile-toggle{margin-left:auto;display:block}.gvs-header-cta{margin-left:0}.gvs-primary-nav .gvs-menu-list{display:block}.gvs-primary-nav .gvs-menu-list a{padding:12px 0;border-bottom:1px solid #d9e0d4}.gvs-menu-list .sub-menu{position:static!important;display:block!important;min-width:0!important;background:none!important;box-shadow:none!important;border:0!important;padding:0 0 0 20px!important}.gvs-footer-grid{gap:30px}}
@media(max-width:700px){.gvs-section{padding:65px 0}.gvs-wrap{width:calc(100% - 40px)}.gvs-split,.gvs-story-grid,.gvs-quote-grid,.gvs-contact-grid{grid-template-columns:1fr;gap:30px}.gvs-reverse .gvs-split-art{order:0}.gvs-section h1{font-size:clamp(42px,10vw,60px)}.gvs-section h2{font-size:clamp(34px,8vw,47px)}.gvs-hero-image{height:420px}.gvs-type-hero .gvs-split-art{min-height:0}.gvs-gifts-grid,.gvs-cards,.gvs-gallery{grid-template-columns:1fr;gap:24px}.gvs-story-badge{min-height:300px}.gvs-story-badge strong{font-size:95px}.gvs-footer-inner{width:calc(100% - 40px)}.gvs-footer-grid{grid-template-columns:1fr 1fr}.gvs-footer-grid>div:first-child{grid-column:1/-1}.gvs-footer-base>span:last-child{margin-left:0}.gvs-form-panel{padding:16px}}
@media(max-width:470px){.gvs-head-inner{width:calc(100% - 32px)}.gvs-header-cta{font-size:10px}.gvs-brand-text{font-size:24px}.gvs-footer-grid{grid-template-columns:1fr}.gvs-footer-grid>div:first-child{grid-column:auto}}
@media(prefers-reduced-motion:reduce){.gvs-section *, .gvs-site-header *{transition:none!important;animation:none!important}}
