/*
Theme Name: Merryglow
Description: A storybook Christmas wrapping-paper theme with an immersive village entrance and WooCommerce support.
Version: 0.2.0
Author: Dary Technologies
Requires at least: 6.4
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: merryglow
*/
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=DM+Sans:wght@400;500;600&display=swap');
:root{--night:#102738;--snow:#faf7ef;--gold:#e8c387;--red:#a73538;--ink:#233f3a;--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--night);color:var(--snow);font-family:var(--sans)}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:6px}.skip{position:fixed;z-index:20;top:-90px;left:15px;background:var(--snow);color:var(--night);padding:15px}.skip:focus{top:15px}.entrance{position:relative;min-height:820px;height:100svh;overflow:hidden;isolation:isolate;background:#102738}.landscape,.shade,#snow{position:absolute;inset:0;width:100%;height:100%}.landscape{background:url('assets/village.png') center 62%/cover no-repeat;z-index:-3}.shade{background:linear-gradient(180deg,rgba(5,19,32,.48),rgba(5,19,32,.13) 45%,transparent 72%,rgba(5,19,32,.75));z-index:-2}#snow{pointer-events:none;z-index:-1}.masthead{display:flex;align-items:center;justify-content:space-between;padding:29px 4.5%;position:relative}.wordmark{font:500 29px var(--serif);letter-spacing:-.8px}.wordmark>span{color:var(--gold);margin-right:8px}.masthead nav{display:flex;align-items:center;gap:34px;font-size:12px}.masthead button,#motion{color:inherit;background:rgba(9,29,43,.3);border:1px solid #ffffff40;border-radius:30px;padding:11px 17px;font-size:11px}.masthead button span{margin-right:8px}.invitation{text-align:center;position:relative;margin:4.5vh auto 0;max-width:800px;text-shadow:0 2px 22px #07142180}.ornament{color:var(--gold);font-size:30px;margin-bottom:20px}.welcome{font:italic 22px var(--serif);margin:0 0 0}.invitation h1{font:500 clamp(90px,10vw,160px)/1.1 var(--serif);letter-spacing:-7px;margin:0 0 12px;color:#fff4d9}.tagline{font:400 24px/1.4 var(--serif);margin:0 0 29px}.enter{display:inline-flex;align-items:center;gap:42px;background:var(--red);border:1px solid #e5b87980;padding:19px 28px;border-radius:3px;color:#fff6e2;font-size:13px;box-shadow:0 5px 35px #0b142d40;transition:background .2s,transform .2s}.enter:hover{background:#bc4043;transform:translateY(-2px)}.enter span{font-size:22px;line-height:14px;color:var(--gold)}.quiet-link{display:block;width:fit-content;margin:17px auto;font:italic 17px var(--serif);color:#fff0d6}.quiet-link:hover{text-decoration:underline}.scene-footer{position:absolute;bottom:25px;left:4.5%;right:4.5%;display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#e0e7ec}.scene-footer>a{font-size:26px;position:absolute;left:50%;transform:translateX(-50%)}.collections{background:var(--snow);color:var(--ink);padding:84px max(6vw,24px) 45px;scroll-margin-top:0}.collection-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:34px}.section-note{font:italic 20px var(--serif);margin:0 0 9px;color:#8b4b3b}h2{font:500 clamp(36px,4vw,58px)/1.05 var(--serif);letter-spacing:-1.5px;margin:0}.collection-heading>p{font-size:12px;line-height:1.8;margin:0 0 5px;color:#5d6b63}.collection-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.collection-card{border:0;padding:0;background:none;text-align:left;color:var(--ink)}.art{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:1.2;overflow:hidden;transition:filter .25s}.collection-card:hover .art{filter:brightness(1.04)}.ornament-art{background:radial-gradient(ellipse at 40% 20%,#487565,#183f36)}.bauble{width:36%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 30% 25%,#e17b6d,#ac3439 48%,#671d29);box-shadow:15px 22px 22px #001b2566,inset -9px -8px 20px #54121b40;color:#efce92;font:80px var(--serif);display:grid;place-items:center;position:relative;transform:rotate(-12deg)}.bauble:before{content:'';width:24%;height:14%;background:linear-gradient(90deg,#b0833c,#f4d994,#986832);position:absolute;top:-10%;left:38%;border-radius:3px}.ribbon{position:absolute;width:1px;height:40%;background:#d8b775;top:0;left:47%;transform:rotate(-8deg)}.cozy-art{background:radial-gradient(ellipse at 50% 30%,#e6d9c6,#c8b496)}.mug{position:relative;width:41%;height:42%;border-radius:8px 8px 40% 40%;background:linear-gradient(100deg,#a5393b,#bd4e49 40%,#8b292f);box-shadow:7px 23px 18px #563d3833;display:grid;place-items:center;transform:rotate(-7deg);z-index:1}.mug:before{content:'';position:absolute;width:35%;height:60%;border:12px solid #a33b3c;border-radius:50%;right:-30%;top:10%;z-index:-1}.mug:after{content:'';position:absolute;top:-4%;left:2%;width:96%;height:10%;background:#422f28;border:5px solid #d88675;border-radius:50%}.mug>span{text-align:center;color:#fae6bd;font:italic 30px/.95 var(--serif)}.steam{position:absolute;top:16%;left:48%;height:45px;width:18px;border-left:2px solid #fff7eaa0;border-radius:50%;transform:rotate(15deg)}.s2{left:56%;top:12%}.paper-art{background:radial-gradient(ellipse at 70% 20%,#ae5551,#6f2a33)}.paper{position:relative;width:49%;height:72%;background:#f3ebd9;box-shadow:12px 15px 20px #44142666;transform:rotate(9deg);color:#355444;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;border:8px solid #f3ebd9;outline:1px solid #cbb682;outline-offset:-15px}.paper>span:first-child{font:500 34px/.95 var(--serif)}.paper-tree{font:65px var(--serif);color:#ad873d}.paper>small{font:italic 10px var(--serif)}.card-caption{display:flex;justify-content:space-between;align-items:center;padding:20px 0}.card-caption small{display:block;color:#788176;font-size:11px;margin-bottom:5px}.card-caption strong{font:500 26px var(--serif)}.card-caption>span:last-child{font-size:24px;color:#976b43}.concept-note{text-align:center;font-size:11px;line-height:1.8;color:#6c776f;margin:35px 0 0}.story{padding:75px 20px 85px;text-align:center;background:#173d35}.story-star{font-size:37px;color:var(--gold)}.story>p{font:400 clamp(36px,4vw,55px)/1.05 var(--serif);margin:24px 0}.story>div{font-size:13px;line-height:1.9;color:#d8e0d6}.story>a{display:inline-block;margin-top:26px;border-bottom:1px solid #dcc99980;padding-bottom:6px;font-size:11px;color:var(--gold)}footer{display:flex;justify-content:space-between;align-items:center;padding:30px 6vw;background:#102e28}footer>span{font-size:10px;color:#b6c5bb}dialog{max-width:500px;width:calc(100% - 36px);padding:45px 35px;text-align:center;border:1px solid #dbcda9;background:var(--snow);color:var(--ink);border-radius:5px}dialog::backdrop{background:#051721bb;backdrop-filter:blur(7px)}.close{position:absolute;right:15px;top:10px;border:0;background:transparent;font-size:30px;color:var(--ink)}.dialog-star{font-size:45px;color:#a17734}dialog h2{font-size:42px;margin:15px 0}#dialog-copy{font-size:14px;line-height:1.8}.dialog-note{font-size:11px;color:#6a7369;margin:25px 0}.dialog-return{border:0;background:var(--red);color:white;padding:13px 20px;border-radius:3px}
@media(min-width:1800px){.entrance{max-height:1250px}.invitation{margin-top:8vh}}
@media(max-width:700px){.entrance{min-height:720px;max-height:980px}.masthead{padding:23px 22px}.wordmark{font-size:25px}.masthead nav{gap:15px}.masthead nav>a{display:none}.masthead button{font-size:10px;padding:9px 12px}.landscape{background-position:57% center}.shade{background:linear-gradient(#091e3290,#091e3230 60%,#091e3280)}.invitation{margin:9vh 18px 0}.invitation h1{font-size:clamp(58px,19vw,125px);letter-spacing:-3px}.welcome{font-size:19px}.tagline{font-size:22px}.ornament{margin-bottom:22px}.scene-footer{left:22px;right:22px;font-size:9px}.scene-footer>span{max-width:120px;line-height:1.6}.scene-footer>a{display:none}.collections{padding:53px 22px 30px}.collection-heading{display:block}.collection-heading>p{margin-top:18px}.collection-grid{grid-template-columns:1fr;gap:20px}.art{aspect-ratio:1.25}.card-caption strong{font-size:28px}.collection-heading h2{font-size:43px}.story{padding:55px 23px}.desktop-break{display:none}footer{flex-wrap:wrap;gap:20px;padding:28px 23px}footer .wordmark{width:100%}.paper>span:first-child{font-size:38px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
.gift-scene{perspective:900px}.scene-village{background:radial-gradient(ellipse at 50% 20%,#d3ddde,#9caeb0)}.scene-candy{background:radial-gradient(ellipse at 50% 20%,#e4cebe,#c29f88)}.scene-forest{background:radial-gradient(ellipse at 50% 20%,#d7d9c9,#a6b5a1)}.gift-box{position:absolute;width:52%;height:46%;left:29%;top:33%;transform:rotate(-13deg) skewY(5deg);box-shadow:12px 20px 17px #26332e44,inset -9px -6px 0 #00000015;border:1px solid #ffffff20}.gift-ribbon{position:absolute;left:42%;height:100%;width:15%;background:linear-gradient(90deg,#c7a66b,#f0d59c 45%,#bd995e);box-shadow:2px 0 4px #0002}.gift-ribbon:after{content:'';position:absolute;top:43%;left:-280%;width:665%;height:25%;background:linear-gradient(#d2b578,#f0d59c 50%,#bd995e)}.gift-bow{position:absolute;color:#e8c88b;left:30%;top:12%;font:80px/.8 Georgia;transform:rotate(-15deg);text-shadow:2px 4px #88693088}.gift-tag{position:absolute;right:8%;bottom:13%;background:#faf1dd;color:#544334;padding:8px 12px;font:italic 13px var(--serif);transform:rotate(20deg);box-shadow:2px 3px 4px #0002}.paper-roll{position:absolute;width:18%;height:86%;left:17%;top:8%;border-radius:40% 40% 8px 8px / 5% 5% 8px 8px;transform:rotate(17deg);box-shadow:10px 10px 12px #26332e44,inset 7px 0 8px #ffffff25,inset -10px 0 8px #0004}.paper-roll:before{content:'';position:absolute;top:0;width:100%;height:4%;border-radius:50%;background:#b6a184;border:4px solid #e5d7bc}.village-pattern{background-color:#173a50;background-image:url('assets/village-pattern.svg');background-size:95px}.candy-pattern{background:repeating-linear-gradient(35deg,#ae323f 0 14px,#f4e6d0 14px 28px,#ae323f 28px 32px,#f4e6d0 32px 36px)}.forest-pattern{background-color:#214e40;background-image:url('assets/forest-pattern.svg');background-size:65px}.scene-candy .gift-ribbon,.scene-candy .gift-ribbon:after{background:linear-gradient(90deg,#194d3c,#367659,#143d30)}.scene-candy .gift-bow{color:#285b42;text-shadow:2px 3px #163e30}.scene-forest .gift-ribbon,.scene-forest .gift-ribbon:after{background:linear-gradient(90deg,#8c2533,#c95259,#8c2533)}.scene-forest .gift-bow{color:#bd404c;text-shadow:2px 3px #6b2130}

/* WordPress content and commerce surfaces. */
.wp-content-area{background:var(--snow);color:var(--ink);min-height:60vh;padding:65px max(6vw,24px)}
.wp-content-area h1{font:500 clamp(40px,5vw,70px)/1.1 var(--serif);margin-top:0}
.wp-content-area h2{margin:1em 0 .4em}.wp-content-area p,.wp-content-area li{line-height:1.8}
.wp-content-area img{max-width:100%;height:auto}.wp-content-area a{text-decoration:underline;text-underline-offset:3px}
.wp-content-area input,.wp-content-area select,.wp-content-area textarea{font:inherit;padding:10px;max-width:100%}
.wp-content-area button,.wp-content-area input[type=submit],.woocommerce a.button,.woocommerce button.button{background:var(--red);color:#fff;padding:12px 20px;border:0;border-radius:3px}
.wp-content-area .entry{max-width:1100px;margin:0 auto 40px}.wp-content-area .entry h2 a{text-decoration:none}
.custom-logo-link img{max-width:150px;max-height:65px;width:auto;height:auto}
.wp-nav,.wp-nav ul{list-style:none;display:flex;gap:22px;margin:0;padding:0}.wp-nav li{position:relative}.wp-nav .sub-menu{display:none;position:absolute;top:100%;left:0;background:var(--night);padding:16px;z-index:10;min-width:180px}.wp-nav li:hover>.sub-menu,.wp-nav li:focus-within>.sub-menu{display:block}.wp-nav .sub-menu li{padding:6px 0}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font:500 27px var(--serif)}.woocommerce ul.products li.product .price{color:var(--ink)}
.merryglow-store{margin-top:50px}.merryglow-store>a{display:inline-block;margin-top:18px;text-decoration:underline}
.wp-content-area .woocommerce-breadcrumb{margin-bottom:30px}.wp-content-area .woocommerce-tabs h2{font-size:30px}
.wp-content-area .woocommerce-message,.wp-content-area .woocommerce-info{color:var(--ink)}
.merryglow-page-content:empty{display:none}body.admin-bar .entrance{height:calc(100svh - 32px)}
.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.alignwide{max-width:1200px}.alignfull{width:100%}.wp-caption{max-width:100%}.wp-caption-text,.gallery-caption{font-size:13px}.sticky{border-left:3px solid var(--red);padding-left:20px}.bypostauthor{border-left:2px solid var(--gold)}
@media(max-width:700px){.wp-nav{flex-wrap:wrap;font-size:11px;gap:12px}.site-masthead{flex-wrap:wrap;gap:20px}.wp-content-area{padding:40px 22px}body.admin-bar .entrance{height:calc(100svh - 46px)}}

.santa-flight{position:absolute;left:0;top:12%;width:clamp(210px,25vw,400px);z-index:2;pointer-events:none;visibility:hidden;filter:drop-shadow(0 3px 7px #030e2366)}.santa-flight.is-flying{visibility:visible;animation:santa-crossing 18s linear both}.santa-flight img{display:block;width:100%;height:auto}.scene-actions{display:flex;align-items:center;gap:12px}.scene-actions button{border:1px solid #ffffff40;border-radius:30px;padding:11px 17px;font:11px var(--sans);color:var(--snow);background:#091d2b4d}.scene-actions button:hover{background:#244453}.scene-actions button:disabled{opacity:.65;cursor:default}@keyframes santa-crossing{0%{transform:translateX(-110%) translateY(12px) rotate(-4deg)}25%{transform:translateX(25vw) translateY(-8px) rotate(-2deg)}60%{transform:translateX(62vw) translateY(8px) rotate(1deg)}100%{transform:translateX(calc(100vw + 110%)) translateY(-16px) rotate(-4deg)}}@media(max-width:700px){.santa-flight{top:11%;width:230px}.scene-actions{gap:7px}.scene-actions button{font-size:9px;padding:9px 10px}.scene-footer>span{max-width:95px}}@media(prefers-reduced-motion:reduce){.santa-flight.is-flying{display:none;animation:none}}

.santa-flight.is-flying.is-paused{animation-play-state:paused}

/* Readable product-focused hero, with a dark backdrop independent of the artwork. */
.entrance .shade{background:linear-gradient(180deg,rgba(5,19,32,.55),rgba(5,19,32,.2) 55%,rgba(5,19,32,.12) 72%,rgba(5,19,32,.8))}
.entrance .invitation{max-width:940px;margin:6vh auto 0;padding:26px 45px 36px;isolation:isolate;text-shadow:0 2px 12px #06132280}
.invitation::before{content:'';position:absolute;inset:-50px -90px -45px;z-index:-1;background:radial-gradient(ellipse at center,#071b2df5 0%,#071b2de8 43%,#071b2daa 60%,#071b2d00 75%);pointer-events:none}
.entrance .invitation h1{font:600 clamp(52px,5.8vw,88px)/1.04 var(--serif);letter-spacing:-2px;color:#fffdf5;margin:0 auto 23px;text-wrap:balance;overflow-wrap:break-word}
.entrance .ornament{font-size:25px;margin-bottom:20px}
.entrance .tagline{font:400 18px/1.65 var(--sans);color:#fffdf5;margin:0 auto 29px;max-width:560px}
.entrance .enter{font-size:15px;font-weight:600;background:#aa3038;border:1px solid #f4cf92;padding:19px 27px;gap:28px}
.entrance .enter:hover{background:#c33e46}
.entrance .quiet-link{font:400 13px/1.6 var(--sans);color:#fff6e4;text-decoration:underline;text-underline-offset:4px;margin-top:20px}
.entrance .masthead nav{font-size:13px}.entrance .masthead nav>a{text-shadow:0 1px 6px #000}
@media(min-width:1800px){.entrance .invitation{margin-top:8vh}}
@media(max-width:700px){.entrance .invitation{margin:8vh 18px 0;padding:12px 7px 24px}.invitation::before{inset:-45px -55px -35px;background:radial-gradient(ellipse,#071b2dfa 0%,#071b2de8 48%,#071b2d90 68%,transparent 80%)}.entrance .invitation h1{font-size:clamp(39px,10.7vw,64px);letter-spacing:-.8px;line-height:1.07;margin-bottom:20px}.entrance .tagline{font-size:16px;line-height:1.6;max-width:340px}.entrance .enter{font-size:14px;gap:18px;padding:17px 22px}.entrance .ornament{margin-bottom:17px}.entrance .quiet-link{font-size:12px}}

.art.product-photo{aspect-ratio:16/9;background:#deded6}.product-photo img{display:block;width:100%;height:100%;object-fit:contain}
