/* DESIGN-02 / Codex. Digital porcelain atelier. UI only; no commerce state. */
.g-atelier{--g-bordo:#541c21;--g-bordo-hover:#752e34;--g-beige:#f2e6d6;--g-paper:#f2e6d6;--g-porcelain:#fffbf4;--g-ink:#311416;--g-muted:#8b373e;--g-line:#d9c7b6;--g-serif:Cardo,Georgia,serif;--g-radius:18px;background:#f2e6d6;color:var(--g-ink);font-size:15px}
.g-atelier h1,.g-atelier h2,.g-atelier h3{font-family:var(--g-sans);letter-spacing:-.055em;font-weight:600;line-height:1.07}
.g-atelier .g-wrap{max-width:1440px;padding-inline:clamp(20px,4.5vw,76px)}
.g-atelier .g-preview-banner{background:#270f11;color:#edddcb;border:0;font-size:11px;line-height:1.5;padding-block:4px}
.g-atelier .g-preview-banner p{max-width:1440px}
.g-atelier .g-header{position:relative;z-index:50;border-bottom:1px solid #cbb7aa;background:#f2e6d6}
.g-atelier .g-header__inner{min-height:91px;padding-block:15px;gap:24px;flex-wrap:nowrap}
.g-wordmark{display:flex;flex-direction:column;gap:5px;flex:none;text-decoration:none;color:#3f191c!important;line-height:.88}
.g-wordmark>span{font-family:var(--g-sans);font-size:39px;letter-spacing:-.075em;font-weight:600}
.g-wordmark__dot{color:#a08b6c}.g-wordmark small{font-size:8px;font-weight:600;letter-spacing:.27em;margin-left:2px;white-space:nowrap}
.g-atelier .g-nav__list{gap:22px}.g-atelier .g-nav__list a{font-size:11px;letter-spacing:0;font-weight:600}
.g-atelier .g-header__tools{gap:9px;flex:none}.g-atelier .g-search--wide{background:#fffbf480;border:1px solid #d2bdb0;border-radius:99px;width:160px}
.g-atelier .g-cart,.g-atelier .g-menubtn,.g-atelier .g-iconbtn{border-radius:99px;border-color:#cfb9a9;background:transparent;color:#4a1d21;min-height:44px}
.g-atelier .g-cart__count{background:#541c21;color:#fffbf4}.g-atelier .g-cart{min-width:64px}
.g-atelier .g-pop__panel{border-radius:22px;background:#fffbf4;box-shadow:0 20px 70px #32101330;border-color:#d7c4b4;padding:20px;max-width:calc(100vw - 36px)}
.g-atelier .g-button{border-radius:99px;min-height:52px;padding:14px 24px;gap:22px;font-weight:600;font-size:13px;letter-spacing:0;background:#541c21;border-color:#541c21;box-shadow:none}
.g-atelier .g-button:hover{background:#752e34;border-color:#752e34;transform:translateY(-2px)}
.g-atelier .g-button--quiet{background:transparent;color:#541c21;border-color:#baae9c}
.g-atelier .g-eyebrow{font-size:10px;letter-spacing:.19em;line-height:1.6;font-weight:500}.g-atelier .g-eyebrow::before,.g-atelier .g-eyebrow::after{display:none}
.a-hero{position:relative;isolation:isolate;overflow:hidden;min-height:680px;color:#f2e6d6;background:radial-gradient(ellipse at 75% 35%,#8e384066,transparent 52%),linear-gradient(115deg,#2a1113 0%,#42171b 52%,#631e24 100%);border-bottom-left-radius:36px;border-bottom-right-radius:36px}
.a-hero::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.23;background-image:linear-gradient(#f2e6d610 1px,transparent 1px),linear-gradient(90deg,#f2e6d610 1px,transparent 1px);background-size:78px 78px;mask-image:linear-gradient(90deg,transparent,#000)}
.a-hero__grid{display:grid;grid-template-columns:1.04fr 1fr;gap:30px;align-items:center;padding-block:45px 30px;min-height:610px}
.a-hero__copy{position:relative;z-index:2;max-width:650px}.a-hero .g-eyebrow{color:#e2d4bf;display:flex;align-items:center;gap:10px;margin:0 0 35px}
.a-hero .g-eyebrow i{width:5px;height:5px;background:#dcc3a3;border-radius:50%;box-shadow:0 0 16px #f2dbb3;flex:none}
.a-hero h1{color:#fff5e8;font-size:clamp(70px,7.8vw,122px);font-weight:500;letter-spacing:-.085em;line-height:.96;margin:0 0 27px}
.a-hero h1 span{display:block}.a-hero h1 em{display:block;color:#ddd0bd;font-family:var(--g-serif);font-weight:400;letter-spacing:-.07em;line-height:1.02}
.a-hero__intro{color:#dfd6c9;max-width:330px;font-size:15px;line-height:1.8;margin-bottom:30px}
.a-hero .g-actions{align-items:center;gap:20px;margin-top:30px}.a-hero .g-button{background:#f2e6d6;border-color:#f2e6d6;color:#351417;min-width:205px;justify-content:space-between;box-shadow:0 10px 35px #16040520}
.a-hero .g-button:hover{background:#fffbf4;border-color:#fffbf4}.a-hero__link{font-size:12px;color:#eae2d7!important;text-underline-offset:6px;text-decoration-color:#bca27c66}
.a-hero__edition{display:flex;gap:25px;margin-top:50px;padding-top:22px;border-top:1px solid #dfd2bf2b;max-width:380px}
.a-hero__edition>span{display:grid;gap:6px;font-size:9px;letter-spacing:.16em;color:#c8bca9}
.a-hero__edition strong{font-size:12px;font-weight:400;letter-spacing:.01em;color:#f2e6d6}
.a-stage{position:relative;width:100%;max-width:460px;justify-self:end;padding:10px 15px 14px;perspective:1400px}
.a-stage__orbit{position:absolute;inset:-70px -50px 0;border:1px solid #e0bfc22e;border-radius:50%;transform:rotate(-30deg) scaleX(.86);pointer-events:none}
.a-stage__orbit::before,.a-stage__orbit::after{content:"";position:absolute;inset:30px -20px;border:1px solid #e0bfc21a;border-radius:50%;transform:rotate(35deg)}
.a-stage__orbit::after{inset:-32px 85px;transform:rotate(60deg);border-color:#f4cfc118}
.a-stage__halo{position:absolute;inset:35px -40px 45px;border-radius:50%;background:radial-gradient(ellipse,#dca7a939,transparent 67%);filter:blur(20px);pointer-events:none}
.a-viewer{position:relative;z-index:1;padding:15px;background:linear-gradient(145deg,#ffffff28,#f0e6d709);border:1px solid #ede3d355;border-radius:28px;box-shadow:0 35px 80px #230b0d4d,inset 0 1px #fff4;transform:rotate(2deg);backdrop-filter:blur(18px);transition:transform .4s ease}
.a-viewer:hover{transform:rotate(0)}.a-viewer__top{display:flex;justify-content:space-between;align-items:center;padding:3px 7px 15px;font-size:8px;letter-spacing:.17em;color:#e5dccf}
.a-viewer__top>span:first-child{display:flex;align-items:center;gap:6px}.a-viewer__top i{width:5px;height:5px;border-radius:50%;background:#e6cbb2;box-shadow:0 0 7px #e6cbb2}
.a-viewer__image{display:block;position:relative;overflow:hidden;border-radius:16px;background:#f2e6d6;aspect-ratio:1.18;box-shadow:0 1px 0 #fff5}
.a-viewer__image img{width:100%;height:100%;object-fit:contain;transition:opacity .16s ease;image-rendering:auto}
.a-viewer__bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 5px 7px;color:#f2e6d6}
.a-viewer__bottom strong{display:block;font-size:16px;letter-spacing:-.03em;font-weight:500}.a-viewer__bottom small{font-size:9px;color:#d2c4ae}
.a-viewer__bottom a{min-height:44px;display:grid;place-items:center;padding:8px 12px;border:1px solid #e5d5bd55;border-radius:99px;color:#f2e6d6;font-size:11px;flex:none;text-decoration:none}
.a-views{position:relative;z-index:2;display:flex;justify-content:center;gap:9px;margin:25px 0 0}
.a-view{padding:5px;background:#a68e6a20;border:1px solid #e0d2bd44;border-radius:13px;width:57px;height:62px;cursor:pointer;transition:transform .2s,border-color .2s;position:relative}
.a-view img{width:100%;height:100%;object-fit:contain;border-radius:7px;background:#f4e6d7}.a-view[aria-pressed=true]{background:#ead7c6;border-color:#f2e6d6;transform:translateY(-4px);box-shadow:0 7px 25px #1f0d0e30}
.a-view:hover{border-color:#f2e6d6}.a-view:focus-visible{outline:2px solid #fff!important;outline-offset:4px}
.a-stage__note{text-align:center;color:#bdad96;font-size:9px;letter-spacing:.1em;margin:14px 0 0}
.a-hero__rail{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:18px 0 21px;border-top:1px solid #ede2d122;color:#c9bca9;font-size:9px;letter-spacing:.13em}
.a-hero__rail span{display:flex;align-items:center;gap:9px}.a-hero__rail i{height:3px;width:35px;background:#d4b49b;border-radius:9px}
.g-atelier .g-section{padding-block:78px}.g-atelier .g-section__head{align-items:flex-end;margin-bottom:28px;gap:20px}.g-atelier .g-section__head h2{font-size:clamp(30px,4vw,54px);margin:7px 0 0;max-width:650px}
.g-atelier .g-section__head .g-more{font-size:12px;padding:10px 16px;border:1px solid #cdb5ad;border-radius:99px;white-space:nowrap;text-decoration:none}
.g-atelier .g-cats__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.g-atelier .g-cat{grid-column:auto;grid-row:auto;margin:0}.g-atelier .g-cat a{display:flex;flex-direction:column;border-radius:24px;background:#fffbf48c;overflow:hidden;border:1px solid #fef9f2;transition:transform .25s,box-shadow .25s;position:relative}
.g-atelier .g-cat a:hover{transform:translateY(-7px);box-shadow:0 20px 40px #4f202415}
.g-atelier .g-cat__media{height:auto;aspect-ratio:1;grid-column:auto;border-radius:17px;margin:10px 10px 0;background:#fffbf4;min-height:0;overflow:hidden}
.g-atelier .g-cat__media img{object-fit:contain;width:100%;height:100%;padding:0}
.g-atelier .g-cat__body{padding:19px;min-height:0;display:grid;grid-template-columns:1fr auto;gap:6px;position:relative}
.g-atelier .g-cat__name{font-family:var(--g-sans);font-size:18px;letter-spacing:-.045em;margin:0;font-weight:600}.g-atelier .g-cat__count{font-size:10px;grid-column:1}.g-atelier .g-cat__arrow{position:static;grid-column:2;grid-row:1/3;align-self:center;width:34px;height:34px;border-radius:50%;background:#ede0d7;border:0}
.g-atelier .g-featured{background:#eadbcd;border-radius:34px}.g-atelier ul.products.g-wall{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 22px}
.g-atelier ul.products.g-wall>li.product{width:100%!important;margin:0!important;transform:none!important;align-self:stretch;padding:0}
.g-atelier .g-wall>li.product:nth-child(n){margin:0;align-self:stretch;transform:none}
.g-atelier ul.products li.product .woocommerce-loop-product__link{border:1px solid #fff8;border-radius:22px;overflow:hidden;background:#fffbf4b0;padding:10px 10px 18px;transition:box-shadow .25s,transform .25s;display:flex!important;flex-direction:column;position:relative}
.g-atelier ul.products li.product .woocommerce-loop-product__link:hover{box-shadow:0 20px 40px #481d2012;transform:translateY(-4px)}
.g-atelier .g-card__media{border-radius:14px;overflow:hidden;aspect-ratio:1;min-height:0;background:#fffbf4;position:relative}
.g-atelier .g-card__media img{object-fit:contain!important;object-position:center;width:100%!important;height:100%!important;margin:0!important}
.g-atelier .g-card__eyebrow{padding-inline:9px;font-size:8px;color:#887963;margin-top:16px}.g-atelier .woocommerce-loop-product__title{font-family:var(--g-sans)!important;font-weight:600!important;font-size:18px!important;letter-spacing:-.05em;padding:6px 9px!important}
.g-atelier ul.products li.product .price{font-size:11px!important;padding-inline:9px;color:#973c44!important;margin:2px 0 14px!important}
.g-atelier .g-chip{border-radius:99px;font-size:8px;margin-left:9px;align-self:flex-start;line-height:1.6;padding:2px 9px}.g-atelier .g-card__more{position:absolute;right:18px;bottom:18px;font-size:10px;color:#541c21;letter-spacing:0}
.g-atelier .g-story{background:radial-gradient(ellipse at 15% 10%,#933b4255,transparent 60%),#321013;border-radius:34px;margin-top:30px;padding-block:90px}
.g-atelier .g-story h2{font-size:clamp(35px,4vw,58px);color:#f2e6d6}.g-atelier .g-story h3{color:#f2e6d6;font-size:24px}.g-atelier .g-story p{color:#d8cebe}.g-atelier .g-story__petal{opacity:.05}
.g-atelier .g-closing__inner{border-radius:28px;border-color:#d7bfaf;padding:40px;background:linear-gradient(120deg,#fffbf4,#e6d4c5);box-shadow:0 20px 50px #33121508}
.g-atelier .g-closing__inner h2{font-size:clamp(30px,4vw,54px)}.g-atelier .g-closing__links a{font-family:var(--g-sans);font-size:13px}
.g-atelier .g-guide__item{border-radius:20px;background:#fffbf480;border:1px solid #fff8;padding:26px}.g-atelier .g-guide__item h3{font-size:23px}
.g-atelier .g-note{border:1px solid #d6c2b0;border-radius:18px;background:#fff9f170;font-size:12px}.g-atelier .g-note__title{letter-spacing:-.025em;font-size:16px}
.g-atelier .g-footer{background:#2a1113;color:#ded4c6;border-radius:34px 34px 0 0;border:0;padding-block:55px 30px}
.g-atelier .g-footer__name{font-family:var(--g-sans);font-size:43px;font-weight:500;letter-spacing:-.065em;color:#f2e6d6}
.g-atelier .g-footer__brand>p:last-child{font-size:12px;color:#baad99}.g-atelier .g-footer a{color:#e0d6c8}.g-atelier .g-footer__title{color:#b1a188;font-size:9px}.g-atelier .g-footer__nav li a{font-size:12px}.g-atelier .g-footer__note{border-color:#dfd2be22;color:#b6a996;font-size:10px}
.g-atelier.woocommerce .g-main,.g-atelier .woocommerce.g-main{padding-top:35px}.g-atelier .woocommerce-products-header h1{font-size:clamp(38px,5vw,70px)}
.g-atelier .woocommerce-breadcrumb{font-size:10px!important;color:#908068!important;margin-bottom:28px!important}
.g-atelier .g-catalog-tools{border-radius:24px;background:#fffbf4a6;border:1px solid #fff9;box-shadow:0 10px 35px #32101306;padding:18px;margin-bottom:30px}
.g-atelier .g-catalog-tools button,.g-atelier .g-catalog-tools input,.g-atelier .g-catalog-tools select{border-radius:12px}.g-atelier .g-filter-chips a{border-radius:99px}
.g-atelier.woocommerce ul.products{column-gap:20px;row-gap:28px}.g-atelier .woocommerce-pagination ul{border:0!important;display:flex;justify-content:center;gap:7px}.g-atelier .woocommerce-pagination ul li{border:0!important}.g-atelier .woocommerce-pagination ul li a,.g-atelier .woocommerce-pagination ul li span{border-radius:50%;min-width:38px;min-height:38px;padding:12px!important;background:#fff8!important}.g-atelier .woocommerce-pagination ul li span.current{background:#541c21!important;color:#fff!important}
.g-atelier.woocommerce div.product .woocommerce-product-gallery{border-radius:25px;overflow:hidden;background:#fffbf4;padding:12px;border:1px solid #fff}
.g-atelier .woocommerce-product-gallery__image a{border-radius:17px;overflow:hidden}.g-atelier.woocommerce div.product .summary{padding:12px 0}.g-atelier.woocommerce div.product .product_title{font-size:clamp(36px,4.5vw,60px);letter-spacing:-.06em}
.g-atelier .g-product-facts{border-radius:17px;overflow:hidden;background:#fffbf473;border-color:#d8c2b7}.g-atelier .g-product-facts>div{padding:14px 18px}.g-atelier .woocommerce-tabs{border-top-color:#ccb4ae}
.g-atelier .g-buybar{background:#fffbf4ed;border-radius:20px 20px 0 0;box-shadow:0 -10px 40px #32101315;backdrop-filter:blur(12px)}
.g-atelier .woocommerce button.button,.g-atelier .woocommerce a.button,.g-atelier .woocommerce input.button{border-radius:99px!important;font-family:var(--g-sans);font-size:13px!important;min-height:46px}
.g-atelier .woocommerce form .form-row input.input-text,.g-atelier .woocommerce form .form-row textarea,.g-atelier .woocommerce .select2-container .select2-selection{border-radius:12px!important;border-color:#cac0b0;background:#fffbf4!important}
.g-atelier .woocommerce form.checkout .col2-set,.g-atelier .woocommerce .woocommerce-checkout-review-order{border-radius:24px}.g-atelier table.shop_table{border-radius:20px;overflow:hidden;border-color:#cfb8ae!important}
@media(min-width:1600px){.a-hero__grid{min-height:740px}}
@media(max-width:1150px){.g-atelier .g-nav--wide{display:none}.g-atelier .g-pop--menu{display:block}.g-atelier .g-pop--search{display:block}.g-atelier .g-search--wide{display:none}.a-hero h1{font-size:88px}.a-hero__grid{gap:10px}.a-stage{padding-inline:8px}.g-atelier .g-cats__grid{gap:12px}}
@media(max-width:800px){.g-atelier .g-header__inner{min-height:78px;padding-block:13px;gap:12px}.g-wordmark>span{font-size:32px}.g-wordmark small{font-size:6px}.a-hero{min-height:0;border-radius:0 0 28px 28px}.a-hero__grid{grid-template-columns:1fr;padding-block:42px 32px;gap:24px}.a-hero__copy{max-width:none}.a-hero h1{font-size:clamp(66px,12vw,102px);letter-spacing:-.075em;margin-bottom:23px}.a-hero .g-eyebrow{margin-bottom:22px;font-size:9px}.a-hero__intro{max-width:370px;font-size:13px;margin-bottom:24px}.a-hero .g-actions{margin-top:22px}.a-hero__edition{display:none}.a-stage{max-width:490px;justify-self:center;padding:18px 7px 4px;width:100%}.a-viewer__image{aspect-ratio:1.1}.a-viewer{padding:11px;border-radius:23px;transform:rotate(1.5deg)}.a-viewer__top{font-size:7px;padding-bottom:12px}.a-stage__orbit{inset:0 -30px -10px}.a-viewer__bottom{padding:14px 5px 3px}.a-viewer__bottom strong{font-size:16px}.a-views{margin-top:21px;gap:9px}.a-stage__note{margin-top:12px}.a-hero__rail{font-size:7px;padding-block:18px;letter-spacing:.09em}.g-atelier .g-section{padding-block:52px}.g-atelier .g-cats__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.g-atelier .g-cat__body{padding:14px}.g-atelier .g-cat__name{font-size:17px}.g-atelier .g-cat__arrow{width:28px;height:28px}.g-atelier .g-section__head h2{font-size:34px}.g-atelier .g-section__head .g-more{font-size:10px;padding:9px 12px}.g-atelier ul.products.g-wall{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px}.g-atelier .g-card__eyebrow{padding-inline:3px;font-size:7px}.g-atelier .woocommerce-loop-product__title{font-size:16px!important;padding-inline:3px!important}.g-atelier ul.products li.product .price{font-size:10px!important;padding-inline:3px;margin-bottom:30px!important}.g-atelier .g-chip{margin-left:3px}.g-atelier .g-card__more{right:12px;bottom:17px;font-size:9px}.g-atelier .g-story{padding-block:55px}.g-atelier .g-closing__inner{padding:25px}.g-atelier .g-footer{padding-block:40px 25px}.g-atelier .g-footer__name{font-size:34px}.g-atelier .g-note{padding:18px}.g-atelier.woocommerce div.product .summary{padding-top:30px}}
@media(max-width:380px){.g-atelier .g-header__inner{gap:7px}.g-wordmark>span{font-size:28px}.g-wordmark small{font-size:5.5px;letter-spacing:.19em}.g-atelier .g-header__tools{gap:4px}.g-atelier .g-cart{min-width:49px;padding-inline:7px}.g-atelier .g-menubtn{font-size:11px;padding-inline:10px;gap:4px}.g-atelier .g-iconbtn{width:37px;padding:6px}.a-hero h1{font-size:63px}.a-hero .g-actions{gap:18px}.a-hero__link{font-size:10px}.a-hero .g-button{min-width:195px}.g-atelier .g-cat__body{padding:12px 10px}.g-atelier .g-cat__name{font-size:15px}.g-atelier .g-cat__arrow{width:24px;height:24px}.g-atelier .g-cat__count{font-size:9px}}
@media(prefers-reduced-motion:reduce){.g-atelier *, .g-atelier *::before,.g-atelier *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.a-viewer{transform:none!important}}

.g-atelier ul.products.g-wall>li.product:nth-child(n){grid-column:auto!important;grid-row:auto!important;min-width:0;max-width:100%;}

/* Integration fix (DESIGN-02, plugin side): on phones the header squeezed the wordmark until "giuliette." broke inside
   the word (at 390 and 320 px). The compact header values of the ≤380 px step now apply up to 420 px and the wordmark
   scales with the screen, so it stays on one line from 320 px up; on narrower screens it may wrap, nothing overflows. */
@media(max-width:420px){.g-atelier .g-header__inner{gap:7px}.g-atelier .g-header__tools{gap:4px}.g-atelier .g-cart{min-width:49px;padding-inline:7px}.g-atelier .g-menubtn{font-size:11px;padding-inline:10px;gap:4px}.g-atelier .g-iconbtn{width:37px;padding:6px}.g-wordmark>span{font-size:clamp(22px,7.2vw,28px)}.g-wordmark small{font-size:5.5px;letter-spacing:.19em}}
