/*
Theme Name: GEN X NIGHTMARES
Author: GEN X NIGHTMARES LLC
Description: Independent WooCommerce storefront in warm ivory, charcoal and burnt orange. Editable homepage, responsive navigation, and native WooCommerce checkout support. Pair with GXN Workshop for engraving previews and custom requests.
Version: 1.0.0
Requires at least: 6.5
Requires PHP: 7.4
Text Domain: gen-x-nightmares
License: GPL v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
:root{--paper:#f6f1e8;--ink:#25221f;--muted:#6d6257;--accent:#aa401a;--line:#ddd2c4;--white:#fffdf9;--serif:Georgia,'Times New Roman',serif;--display:Impact,'Arial Narrow','Helvetica Neue',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-underline-offset:4px}a:hover{color:var(--accent)}img{max-width:100%;height:auto;vertical-align:middle}button,input,textarea,select{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #137c94;outline-offset:4px}.container{width:min(1240px,calc(100% - 80px));margin-inline:auto}.skip-link{position:fixed;left:15px;top:-100px;background:white;padding:14px;z-index:9999}.skip-link:focus{top:10px}.announcement{text-align:center;background:var(--accent);color:white;padding:8px 20px;font-family:var(--serif);font-size:14px;letter-spacing:.06em}.site-header{border-bottom:1px solid var(--line);background:var(--paper)}.header-inner{display:flex;align-items:center;gap:30px;min-height:112px}.branding{margin-right:auto}.wordmark{display:block;font-family:var(--display);font-stretch:condensed;font-size:clamp(25px,2.8vw,40px);letter-spacing:-.04em;line-height:1.05;text-decoration:none}.brand-tagline{display:block;font-size:10px;font-weight:800;letter-spacing:.25em;margin-top:9px}.custom-logo{max-width:280px;max-height:85px;width:auto}.site-navigation .menu{display:flex;gap:28px;align-items:center;list-style:none;padding:0;margin:0;font-size:14px;font-weight:700}.site-navigation a{text-decoration:none}.site-navigation li{position:relative}.site-navigation .sub-menu{display:none;position:absolute;z-index:10;min-width:200px;list-style:none;background:var(--white);border:1px solid var(--line);padding:15px;right:0}.site-navigation li:hover>.sub-menu,.site-navigation li:focus-within>.sub-menu{display:block}.cart-link{display:flex;align-items:center;gap:8px;border-left:1px solid var(--line);padding-left:24px;text-decoration:none;font-size:13px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;padding-block:48px 58px;gap:45px}.hero-copy{align-self:center;padding-block:25px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:11px;font-weight:800;color:var(--accent);margin:0 0 18px}.hero h1{font-family:var(--display);font-weight:900;font-size:clamp(52px,6.6vw,90px);line-height:1.03;letter-spacing:-.035em;margin:0 0 24px;max-width:570px}.hero-intro{font-family:var(--serif);font-size:25px;line-height:1.4;max-width:420px;margin:0 0 30px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.button,button[type=submit],input[type=submit],.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{display:inline-flex;justify-content:center;align-items:center;gap:22px;border:1px solid var(--accent);border-radius:3px;background:var(--accent);color:#fff;text-decoration:none;padding:13px 23px;font-size:14px;font-weight:700;line-height:1.5;box-shadow:none;cursor:pointer}.button:hover,button[type=submit]:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{background:#833014;border-color:#833014;color:white}.button-outline{background:transparent;color:var(--ink);border-color:var(--ink)}.button-outline:hover{background:var(--ink);border-color:var(--ink)}.hero-note{font-size:12px;color:var(--muted);margin:24px 0 0}.hero-image{margin:0;position:relative;min-height:460px;overflow:hidden;background:#b58b60;border-radius:2px}.hero-image img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.hero-image figcaption{position:absolute;bottom:20px;left:20px;background:rgba(246,241,232,.94);padding:9px 14px;font-family:var(--serif);font-style:italic;font-size:15px;max-width:calc(100% - 40px)}.benefits{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#eee7dc}.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);padding-block:25px}.benefit-grid>div{padding:0 32px;border-right:1px solid #d0c2b0}.benefit-grid>div:first-child{padding-left:0}.benefit-grid>div:last-child{border:0}.benefit-grid span{font-size:13px;color:var(--accent);margin-right:15px}.benefit-grid strong{font-family:var(--serif);font-size:20px}.benefit-grid p{font-size:12px;color:var(--muted);margin:6px 0 0}.collection{padding-block:70px 80px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:35px}h2{font-family:var(--display);font-size:clamp(34px,4.4vw,56px);line-height:1.1;letter-spacing:-.025em;margin:0 0 20px}h1{font-family:var(--display);font-size:clamp(40px,5vw,65px);line-height:1.1}h3{font-family:var(--serif);font-size:23px}.section-heading h2{margin:0}.text-link{font-size:13px;font-weight:700;white-space:nowrap}.collection-empty{padding:45px;background:#ede4d6;border:1px solid var(--line)}.collection-empty h3{margin:0}.custom-callout{position:relative;background:var(--ink);color:var(--paper);text-align:center;padding:65px 0}.custom-callout:before{content:'';position:absolute;inset:10px;border:1px solid #52473c;pointer-events:none}.callout-inner{position:relative}.custom-callout .eyebrow{color:#d99764}.custom-callout h2{font-size:clamp(38px,5vw,65px)}.custom-callout p{color:#e0d5c6;font-family:var(--serif);font-size:20px}.workshop{padding-block:80px;display:grid;grid-template-columns:1fr 1fr;gap:0 70px;align-items:center}.workshop .eyebrow{grid-column:1/-1}.workshop h2{font-size:60px}.workshop>p:last-child{max-width:560px;font-family:var(--serif);font-size:21px}.site-footer{border-top:1px solid var(--line);padding:42px 0}.footer-grid{display:flex;justify-content:space-between;gap:40px}.site-footer .wordmark{font-size:27px}.site-footer p,.site-footer small,.site-footer nav{font-size:12px;color:var(--muted)}.site-footer ul{list-style:none;padding:0}.content-area{min-height:55vh;padding-block:48px 75px}.content-area h1{margin-top:0}.entry-content{overflow-wrap:anywhere}.entry-content:after{content:'';clear:both;display:table}.entry-content .alignwide{max-width:100%}.entry-content p{max-width:75ch}.entry-content .alignleft{float:left;margin:0 25px 15px 0}.entry-content .alignright{float:right;margin:0 0 15px 25px}.entry-content .aligncenter{display:block;margin-inline:auto}.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}.wp-caption,.gallery-caption,.bypostauthor{max-width:100%}input:not([type=checkbox]):not([type=radio]):not([type=submit]),textarea,select{max-width:100%;padding:12px;border:1px solid #b9ac9b;border-radius:3px;background:var(--white);color:var(--ink)}textarea{min-height:130px}label{font-size:14px;font-weight:700}table{border-collapse:collapse;width:100%}td,th{padding:12px;text-align:left;border-bottom:1px solid var(--line)}
/* Preserve WooCommerce's native behavior and extension markup. */
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding:0;margin:0!important}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none!important}.woocommerce ul.products li.product{float:none!important;width:auto!important;margin:0!important;min-width:0}.woocommerce ul.products li.product a img{aspect-ratio:1.15;object-fit:cover;margin:0 0 18px;border-radius:2px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--serif);font-size:22px;letter-spacing:-.02em;padding:0;margin:0 0 8px;line-height:1.3}.woocommerce ul.products li.product .price{color:var(--muted);font-size:16px}.woocommerce ul.products li.product .button{margin-top:12px}.woocommerce span.onsale{background:var(--accent);color:white;min-width:45px;min-height:45px}.woocommerce .woocommerce-breadcrumb{font-size:12px;margin-bottom:30px}.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{margin-bottom:30px}.woocommerce div.product .product_title{font-family:var(--display);font-size:clamp(34px,4vw,53px);line-height:1.1}.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--accent)}.woocommerce div.product .woocommerce-tabs ul.tabs li{border-color:var(--line);background:#e9dfd1}.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:var(--paper)}.woocommerce div.product .woocommerce-tabs ul.tabs:before{border-bottom-color:var(--line)}.woocommerce div.product .woocommerce-tabs h2{font-size:30px}.woocommerce .quantity .qty{width:80px;padding:11px}.woocommerce div.product form.cart{margin-top:25px}.woocommerce div.product .related.products{clear:both;padding-top:45px}.woocommerce-message,.woocommerce-info{border-top-color:var(--accent);background:#eee6da;color:var(--ink)}.woocommerce-message:before,.woocommerce-info:before{color:var(--accent)}.woocommerce table.shop_table{border-color:var(--line);border-radius:3px}.woocommerce #payment{background:#e9e1d5}.woocommerce #payment div.payment_box{background:var(--white)}.woocommerce #payment div.payment_box:before{border-bottom-color:var(--white)}.wc-block-components-button:not(.is-link){background:var(--accent);color:white;border-radius:3px}.woocommerce .col2-set .col-1,.woocommerce .col2-set .col-2{margin-bottom:24px}.request-page{max-width:900px}.request-page>p:not(.eyebrow){font-family:var(--serif);font-size:20px}.gxn-form{background:var(--white);border:1px solid var(--line);padding:32px;margin-block:30px}.gxn-field{margin:0 0 20px}.gxn-field label{display:block;margin-bottom:6px}.gxn-field input:not([type=checkbox]),.gxn-field textarea,.gxn-field select{width:100%}.gxn-field small{display:block;color:var(--muted);font-size:12px;margin-top:6px}.gxn-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.gxn-message{padding:20px;border-left:4px solid var(--accent);background:#eee4d4}.gxn-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.gxn-personalization{padding:20px;background:#eee7dc;border:1px solid var(--line);margin:20px 0}.gxn-personalization h3{margin:0 0 15px}.gxn-preview{position:relative;margin:0 0 20px;overflow:hidden;isolation:isolate;background:#c3a37a}.gxn-preview img{display:block;width:100%}.gxn-preview-text{position:absolute;display:flex;align-items:center;justify-content:center;text-align:center;white-space:pre-wrap;line-height:1.2;overflow:hidden;overflow-wrap:anywhere;color:#3d291c;text-shadow:0 1px 0 #ffffff30}.gxn-preview-note{font-size:12px;color:var(--muted)}
@media(max-width:1000px){.container{width:calc(100% - 48px)}.header-inner{gap:20px}.site-navigation .menu{gap:17px}.wordmark{font-size:29px}.hero{gap:25px}.hero h1{font-size:65px}.hero-actions{display:grid}.hero-image{min-height:430px}.benefit-grid>div{padding-inline:20px}.benefit-grid strong{font-size:18px}}
@media(max-width:760px){.container{width:calc(100% - 36px)}.header-inner{min-height:95px;flex-wrap:wrap;gap:12px;padding-block:17px}.branding{max-width:calc(100% - 145px)}.wordmark{font-size:25px}.brand-tagline{font-size:8px;letter-spacing:.13em}.menu-toggle{display:flex;align-items:center;gap:7px;border:0;background:transparent;padding:9px 3px;font-size:13px}.cart-link{padding-left:12px}.cart-link>span{display:none}.site-navigation{display:none;order:5;width:100%;border-top:1px solid var(--line);padding-block:16px}.site-navigation.is-open{display:block}.site-navigation .menu{display:flex;align-items:stretch;flex-direction:column;gap:12px}.site-navigation .sub-menu{display:block;position:static;border:0;background:none;padding:5px 0 5px 15px}.hero{grid-template-columns:1fr;padding-top:30px;padding-bottom:32px;gap:30px}.hero-copy{padding:0}.hero h1{font-size:clamp(48px,11vw,72px);max-width:550px}.hero-intro{font-size:23px}.hero-actions{display:flex}.hero-image{min-height:330px}.hero-note{margin-top:16px}.benefit-grid{grid-template-columns:1fr;padding-block:12px}.benefit-grid>div{padding:15px 0!important;border-right:0;border-bottom:1px solid var(--line)}.benefit-grid p{margin-left:42px}.collection{padding-block:45px}.section-heading{align-items:flex-start;flex-direction:column;gap:10px}.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 15px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:19px}.woocommerce ul.products li.product .button{font-size:12px;padding:10px 13px}.custom-callout{padding-block:45px}.custom-callout h2{font-size:43px}.custom-callout p{font-size:18px}.workshop{grid-template-columns:1fr;padding-block:48px;gap:0}.workshop h2{font-size:48px}.workshop>p:last-child{font-size:19px;margin:0}.footer-grid{flex-direction:column;gap:15px}.content-area{padding-block:30px 50px}.gxn-form{padding:20px}.gxn-row{grid-template-columns:1fr;gap:0}.woocommerce div.product .woocommerce-tabs ul.tabs{padding-left:0}.woocommerce div.product .woocommerce-tabs ul.tabs li{padding:0 10px}.woocommerce .woocommerce-ordering{float:none;clear:both}.woocommerce table.shop_table{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
