/* Customer edition configurator: quiet book typography, physical samples, clear choices. */
.order-configurator{--config-green:#263e31;--config-line:#d8d8ce}
.config-width{max-width:1320px;width:88%;margin:auto}
.config-intro{display:flex;justify-content:space-between;align-items:flex-end;padding:62px 0 40px;gap:60px}
.order-configurator .config-intro h1{font-size:clamp(52px,5.8vw,82px);margin:12px 0 0;line-height:1.03}
.config-intro>p{max-width:355px;font-size:14px;margin-bottom:5px;color:#60665c}
.config-steps{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--config-line);border-bottom:1px solid var(--config-line);margin-bottom:44px;scroll-margin-top:20px}
.config-steps button{display:flex;align-items:center;gap:16px;border:0;border-bottom:2px solid transparent;background:none;padding:19px 0;text-align:left;font:13px var(--sans);color:#697065;cursor:pointer}
.config-steps button span{font-size:10px;letter-spacing:.1em;color:#89917f}
.config-steps button[aria-current]{color:#263e31;border-bottom-color:#263e31}
.config-steps button[aria-current] span{color:#263e31}
.config-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:64px;align-items:start}
.config-form{min-width:0}
.order-configurator .config-step h2{font-size:43px;line-height:1.12;margin:8px 0 24px;outline:none}
.config-eyebrow{font-size:9px;letter-spacing:.17em;font-weight:600;color:#737b6c;margin:0}
.config-step+.config-step{margin-top:52px}
.config-enhanced .config-step+.config-step{margin-top:0}
.config-intro .kicker{font-size:10px;letter-spacing:.16em}
.config-form fieldset{margin:0;padding:0;border:0;min-width:0}
.config-form legend{font-size:12px;font-weight:600;margin-bottom:12px}
.product-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.product-option{display:block;position:relative;cursor:pointer}
.product-option>input,.cover-choice>input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.product-card{position:relative;display:block;height:100%;border:1px solid #d8d8ce;background:#f8f6f0;padding:7px 7px 18px;transition:border-color .15s,background .15s}
.product-image{height:140px;display:block;overflow:hidden;position:relative;background:#e8e4da;margin-bottom:16px}
.product-image img{height:100%;width:100%;object-fit:cover}
.product-option:nth-child(2) .product-image img{object-fit:contain;padding:12px}
.product-image .combined-tree{position:absolute;bottom:6px;right:6px;width:46%;height:auto;box-shadow:0 2px 8px #29362938}
.product-card strong{font:24px var(--serif);display:block;padding:0 9px;line-height:1.1;letter-spacing:-.03em}
.product-card small{font-size:10px;display:block;padding:9px 9px 0;color:#71766a;line-height:1.6}
.choice-mark{position:absolute;top:15px;right:15px;width:23px;height:23px;display:grid;place-items:center;border:1px solid #fff;border-radius:50%;background:#f8f6f0;color:transparent;font-size:12px}
.product-option input:checked+.product-card{border-color:#324b37;background:#edf0e7;box-shadow:inset 0 0 0 1px #324b37}
.product-option input:checked+.product-card .choice-mark{background:#263e31;color:#fff;border-color:#263e31}
.product-option input:focus-visible+.product-card,.cover-choice input:focus-visible+span{outline:2px solid #996b45;outline-offset:4px}
.config-section-title{display:flex;align-items:baseline;justify-content:space-between;gap:20px;border-top:1px solid var(--config-line);margin:32px 0 22px;padding-top:24px}
.order-configurator .config-section-title h3{font-size:30px;margin:0}
.config-section-title>span{font-size:10px;color:#777e71}
.config-form .form-field{margin:0 0 21px}
.config-form .form-field label{font:12px var(--sans);font-weight:500;display:block;margin-bottom:8px;color:#3e4a3c}
.config-form .form-field input,.config-form .form-field select,.config-form .form-field textarea{width:100%;min-height:48px;padding:12px 13px;border:1px solid #cfd1c5;border-radius:0;box-shadow:none;background:#fbfaf6;color:#283b2c;font:13px var(--sans);line-height:1.5}
.config-form .form-field textarea{resize:vertical}
.config-form .form-field input:focus,.config-form .form-field select:focus,.config-form .form-field textarea:focus{outline:1px solid #63745b;outline-offset:0;border-color:#63745b}
.config-form input[type=number]{max-width:140px}
.config-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.config-pair>div{min-width:0}
.config-form .cover-options{display:flex;gap:10px 18px;flex-wrap:wrap;margin-bottom:24px}
.cover-options legend{margin-bottom:16px}
.cover-choice{cursor:pointer;font-size:11px;position:relative}
.cover-choice>span{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid transparent}
.cover-choice input:checked+span{border-bottom-color:#324b37;color:#263e31}
.cover-swatch{width:25px;height:25px;display:inline-block;border:3px double #ffffff9c;box-shadow:0 0 0 1px #a4aa97;border-radius:50%}
.swatch-green{background:#263e31}.swatch-burgundy{background:#652f34}.swatch-linen{background:#c1b195}.swatch-later{background:#f3efe6;border:1px dashed #8f9a85;box-shadow:none}
.quantity-presets{display:flex;gap:7px;align-items:center;margin-top:-10px;margin-bottom:24px;font-size:10px;color:#7d8176}
.quantity-presets button{width:34px;height:32px;border:1px solid #cfd1c5;background:transparent;color:#344b36;cursor:pointer;font:11px var(--sans)}
.quantity-presets button[aria-pressed=true]{border-color:#324b37;background:#e7ebdf}
.config-form .photo-options{display:flex;flex-wrap:wrap;gap:10px 22px}
.photo-options label{font:12px var(--sans);display:flex;align-items:center;gap:8px;cursor:pointer}
.photo-options input{width:16px;height:16px;accent-color:#263e31}
.config-note{font-size:11px;color:#757b70;margin:12px 0 20px;line-height:1.7!important}
.step-intro{font-size:13px;color:#626c5d;max-width:600px;margin:-7px 0 24px}
.scope-field{border-bottom:1px solid var(--config-line);margin-bottom:24px;padding-bottom:10px}
.scope-field .form-field{margin-bottom:6px}
.family-member{border:1px solid var(--config-line);background:#faf8f2;margin:0 0 12px}
.family-member>summary{display:flex;align-items:center;gap:14px;padding:17px 20px;cursor:pointer;list-style:none}
.family-member>summary::-webkit-details-marker{display:none}
.member-number{font-size:10px;color:#909785;letter-spacing:.06em}
.family-member summary strong{display:block;font:24px var(--serif);line-height:1.2;overflow-wrap:anywhere}
.family-member summary small{font-size:10px;color:#7e8476;display:block;margin-top:4px}
.member-disclosure{margin-left:auto;font-size:22px;line-height:1;color:#818a77;transition:transform .2s}
.family-member[open] .member-disclosure{transform:rotate(45deg)}
.member-body{padding:4px 20px 18px}
.member-actions{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;border-top:1px solid #e0e2d7;padding-top:14px}
.parent-actions{display:flex;gap:17px}
.member-actions button,.family-add button,.config-back{border:0;background:none;color:#3b563f;font:11px var(--sans);padding:8px 0;cursor:pointer}
.member-actions .member-remove{color:#797c73;font-size:10px}
.member-delete{font-size:11px;display:flex;gap:8px;align-items:center}
.member-delete input{width:16px;height:16px}
.config-enhanced .member-delete{display:none}
.family-add{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin:15px 0 25px}
.family-add button{font-size:13px;border-bottom:1px solid #94a08a;min-height:44px}
.family-add [role=status]{font-size:11px;color:#7d8574}
.family-notes{margin:15px 0 25px;border-block:1px solid var(--config-line);padding:16px 0}
.family-notes summary{cursor:pointer;font-size:12px}
.family-notes .form-field{margin:16px 0 0}
.step-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;border-top:1px solid var(--config-line);padding-top:25px;margin-top:28px}
.step-actions .button{font-size:12px;padding:15px 24px;border:0;border-radius:0;background:#263e31;min-height:50px;cursor:pointer}
.step-actions>span{font-size:10px;color:#828777}
.config-form .checkbox-field{display:flex;align-items:flex-start;gap:10px;margin-top:24px}
.config-form .checkbox-field input{width:18px;height:18px;flex:none;margin-top:2px;accent-color:#263e31}
.config-form .checkbox-field label{font-size:11px;line-height:1.7}
.config-summary{position:sticky;top:25px;background:#e9ecdf;border:1px solid #d8decb;min-width:0}
.summary-art{aspect-ratio:3/2;overflow:hidden;background:#e7e4d9}
.summary-art img{width:100%;height:100%;object-fit:contain}
.summary-content{padding:26px}
.order-configurator .summary-content h3{font-size:32px;line-height:1.1;margin:12px 0 25px}
.summary-content dl,.config-review dl{display:grid;grid-template-columns:1fr 1.6fr;gap:10px 16px;font-size:11px;line-height:1.65;margin:0}
.summary-content dt,.config-review dt{color:#777e6e}
.summary-content dd,.config-review dd{margin:0;text-align:right;color:#364830;overflow-wrap:anywhere}
.summary-family{padding-top:22px;font-size:11px;color:#5e7054}
.summary-price{margin-top:23px;padding-top:23px;border-top:1px solid #cdd5bf}
.summary-price>span{font-size:9px;letter-spacing:.1em;text-transform:uppercase;display:block;color:#768367}
.summary-price strong{font:23px var(--serif);display:block;line-height:1.2;margin:8px 0}
.summary-price p{font-size:11px;color:#727e66;margin-bottom:0}
.config-review{background:#f9f7f1;border:1px solid var(--config-line);padding:24px;margin:0 0 28px}
.order-configurator .config-review h3{margin:0 0 20px;font-size:30px}
.config-review h4{font:12px var(--sans);margin:24px 0 12px}
.config-review ul{list-style:none;padding:0;margin:0}
.config-review li{padding:10px 0;border-top:1px solid #e0e3d6;font-size:12px;overflow-wrap:anywhere}
.config-review li strong{font-weight:500;display:block}
.config-review li small{font-size:10px;color:#7a846e}
.config-review .config-back{margin-top:20px;border-bottom:1px solid #a4ad98}
.config-footer{margin-top:80px;border-top:1px solid var(--config-line);padding:26px 0;display:flex;justify-content:space-between;gap:24px;color:#74816a;font-size:11px}
.config-footer>a:first-child{font:24px var(--serif)}
.order-configurator [hidden]{display:none!important}
.order-configurator .visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.config-errors:empty{display:none}
.config-errors .errorlist{padding:15px 20px;border:1px solid #ae7466;background:#f5e9e3}
.config-form .errorlist{font-size:12px;color:#8b4737;list-style:none;padding-left:0}
@media(max-width:1050px){.config-layout{grid-template-columns:minmax(0,1fr) 290px;gap:30px}.config-width{width:92%}.product-card strong{font-size:20px}.product-image{height:110px}.summary-content{padding:20px}}
@media(max-width:760px){.config-layout{display:block}.config-summary{position:static;margin-top:30px}.config-intro{padding-top:35px;gap:22px;align-items:flex-start;flex-direction:column}.config-intro>p{max-width:520px;margin:0}.config-steps{margin-bottom:28px}.config-steps button{font-size:11px;gap:9px;padding:16px 0}.config-steps button span{font-size:9px}.order-configurator .config-step h2{font-size:36px}.summary-art{display:none}.summary-content{padding:24px}.config-footer{margin-top:45px;flex-wrap:wrap}.config-footer>span{display:none}.product-image{height:135px}.product-card strong{font-size:23px}}
@media(max-width:480px){.config-width{width:91%}.config-pair{grid-template-columns:1fr;gap:0}.product-options{gap:7px}.product-image{height:95px;margin-bottom:12px}.product-card{padding:4px 4px 12px}.product-card strong{font-size:19px;padding:0 4px}.product-card small{font-size:9px;line-height:1.55;padding:7px 4px 0}.choice-mark{width:18px;height:18px;top:10px;right:10px;font-size:10px}.cover-choice{font-size:10px}.config-form .cover-options{gap:8px 14px}.family-member>summary{padding:16px}.member-body{padding:4px 16px 16px}.member-actions{gap:8px}.step-actions .button{width:100%}.step-actions .config-back{order:2}.step-actions>span{width:100%}.photo-options label{font-size:11px}.config-summary{margin-top:25px}.config-review{padding:19px}}
@media(prefers-reduced-motion:reduce){.product-card,.member-disclosure{transition:none}}
.receipt-options{display:grid;grid-template-columns:1fr 1.5fr;gap:12px 24px;margin:30px 0 40px;padding:24px 0;border-block:1px solid #d8d8ce;font-size:13px}
.receipt-options dt{color:#757f6b}.receipt-options dd{margin:0}
.summary-art{position:relative}.summary-art .summary-tree-overlay{position:absolute;right:12px;bottom:12px;width:43%;height:auto;border:4px solid #f7f5ed;box-shadow:0 3px 15px #263e3140}
@media(max-width:760px){.order-configurator[data-order-step="2"] .config-summary{display:none}}
/* Choose a family edition first; optional production details follow the selection. */
.order-configurator .product-image{height:190px}
.order-configurator .product-card{padding:9px 9px 22px}
.order-configurator .product-card strong{font-size:26px}
.order-configurator .product-card small{font-size:11px}
.chosen-edition{display:grid;grid-template-columns:1fr auto;column-gap:20px;align-items:center;margin:28px 0 8px;padding:24px 0;border-block:1px solid var(--config-line)}
.chosen-edition>p{font:27px var(--serif);margin:0 0 8px;line-height:1.2}
.chosen-edition>div{grid-column:1;font-size:12px;color:#77806f}
.chosen-edition>div p{margin:3px 0}
.chosen-edition>.button{grid-column:2;grid-row:1/3;min-width:130px;text-align:center;font-size:12px}
.edition-customization>summary,.quiet-options>summary,.member-more>summary,.review-family-more>summary{cursor:pointer;font-size:12px;color:#65755a;padding:12px 0;text-underline-offset:5px;list-style:none}
.edition-customization>summary::after,.quiet-options>summary::after,.member-more>summary::after{content:' +';margin-left:8px}
.edition-customization[open]>summary::after,.quiet-options[open]>summary::after,.member-more[open]>summary::after{content:' −'}
.edition-customization>summary::-webkit-details-marker,.quiet-options>summary::-webkit-details-marker,.member-more>summary::-webkit-details-marker{display:none}
.customization-body{padding-bottom:20px}
.cover-choice>span{font-size:12px;padding:10px 0}
.cover-choice input:checked+span{border-bottom:2px solid #263e31}
.copy-counter{display:inline-flex;align-items:center;min-height:46px;border:1px solid #cfd1c5;background:#faf8f2}
.config-form .copy-counter input{border:0;width:52px;min-height:44px;text-align:center;padding:6px;background:transparent;appearance:textfield;-moz-appearance:textfield}
.copy-counter input::-webkit-inner-spin-button{appearance:none;-webkit-appearance:none}
.copy-counter button{height:44px;width:44px;border:0;background:transparent;color:#425a3c;font-size:20px}
.copy-counter button:disabled{opacity:.3;cursor:default}
.poster-style-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:25px!important}
.poster-style-choice{position:relative;cursor:pointer}
.poster-style-choice>input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}
.poster-style-choice>span{display:block;border:1px solid #d3d8c8;padding:6px 6px 12px;text-align:center;background:#f9f7f1}
.poster-style-choice img{width:100%;height:100px;object-fit:contain}
.poster-style-choice strong{display:block;font:20px var(--serif);padding-top:8px}
.poster-style-choice input:checked+span{border-color:#324b37;box-shadow:inset 0 0 0 1px #324b37;background:#ebeee2}
.poster-style-choice input:focus-visible+span{outline:2px solid #996b45;outline-offset:4px}
.default-poster-size{font-size:13px;margin:0}
.member-more{margin:0 0 15px}
.member-more[open]>.form-field{margin-top:12px}
.family-story{margin:28px 0}
.family-upload{padding:26px;background:#eceee3;border:1px dashed #b3bfa4;margin:28px 0}
.order-configurator .family-upload h3{font:25px var(--serif);line-height:1.25;margin:0 0 18px;max-width:440px}
.upload-pick{display:inline-block;cursor:pointer;border-bottom:1px solid #748566;color:#304f31;padding:6px 0;font-size:13px}
.config-enhanced #family-files{position:absolute;width:1px;height:1px;opacity:0}
.family-upload:has(#family-files:focus-visible) .upload-pick{outline:2px solid #805038;outline-offset:4px}
.family-upload.is-dragover{background:#e0e7d2;border-color:#4b673e}
[data-upload-list]{list-style:none;margin:0;padding:0}
[data-upload-list] li{display:flex;gap:12px;align-items:center;border-top:1px solid #ccd5bf;padding:10px 0;font-size:11px}
[data-upload-list] li>span{overflow-wrap:anywhere;flex:1}
[data-upload-list] small{color:#78836c;white-space:nowrap}
[data-upload-list] button{border:0;background:none;font-size:10px;color:#657258;padding:8px}
[data-upload-status]{font-size:11px;margin-bottom:0}
.family-location{display:grid;gap:12px;margin:30px 0 15px!important}
.family-location label{display:flex;align-items:center;gap:14px;padding:20px;border:1px solid #d4d9c9;cursor:pointer;font-size:13px}
.family-location label:has(input:checked){background:#e9eedf;border-color:#819373}
.family-location input,.destination-options input{accent-color:#304e2f;width:16px;height:16px;flex:none}
.destination-options{display:flex;flex-wrap:wrap;gap:18px;margin:20px 0!important}
.destination-options label{display:flex;gap:8px;align-items:center;font-size:12px}
.family-scope{margin:20px 0}.family-scope .scope-field{border-bottom:0;margin:12px 0}
.personal-edition{position:relative;container-type:inline-size;aspect-ratio:3/2;background:#e8e5da;overflow:hidden}
.personal-book{position:absolute;inset:0}
.personal-book>img{width:100%;height:100%;object-fit:cover}
.personal-lettering{position:absolute;left:31%;top:30%;width:40%;text-align:center;transform:rotate(-14deg) skewX(-5deg);color:#e6ca81}
.personal-lettering strong{font-family:var(--serif);font-weight:400;text-transform:uppercase;font-size:4cqw;letter-spacing:.08em;line-height:1.05;overflow-wrap:anywhere;display:block;max-height:3.2em;overflow:hidden}
.personal-lettering small{display:block;font:1.25cqw var(--serif);letter-spacing:.12em;margin-top:1.7cqw;text-transform:uppercase;overflow-wrap:anywhere}
.personal-edition[data-cover=linen] .personal-lettering{color:#213d2b}
.personal-tree{position:absolute;width:43%;right:3%;bottom:5%;transform:rotate(4deg);box-shadow:0 5px 15px #29372944;background:#f7f6f1;border:3px solid #ecebe4;display:none}
.personal-tree img{width:100%;height:auto;display:block}
.personal-tree-title{position:absolute;top:7%;left:16%;width:68%;text-align:center;line-height:1.05;color:#243f2d}
.personal-tree-title strong{font:2.1cqw var(--serif);letter-spacing:.07em;text-transform:uppercase;display:block;overflow-wrap:anywhere}
.personal-tree-title small{font-size:.6cqw;display:block;margin-top:.4cqw}
.personal-edition[data-product=both] .personal-tree{display:block}
.personal-edition[data-product=line] .personal-book{display:none}
.personal-edition[data-product=line] .personal-tree{display:block;width:85%;left:7.5%;right:auto;bottom:auto;top:7%;transform:rotate(-2deg)}
.personal-edition[data-product=line] .personal-tree-title strong{font-size:4cqw}
.personal-edition[data-product=line] .personal-tree-title small{font-size:1cqw}
.mobile-edition-preview{display:none}
.summary-content [data-summary-options]{font-size:11px;color:#79816f}
.summary-content [data-summary-options] p{margin:4px 0}
.preview-place{font-size:12px;color:#738367;margin:0 0 20px;overflow-wrap:anywhere}
.preview-caption{display:block;margin-top:28px;font-size:9px;color:#8e9586}
.review-edition-art{margin-bottom:12px}
.edition-name{margin-bottom:24px}
.order-configurator .config-review{padding:0;background:none;border:0}
.config-review>section{padding:24px 0;border-bottom:1px solid #d8ddce}
.order-configurator .config-review h3{font:10px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:#7b8571;margin:0 0 12px}
.config-review p{font:23px var(--serif);line-height:1.3!important;margin:6px 0}
.review-family-more p{font:12px var(--sans);color:#6f7d64}
.proposal-promise{font:27px var(--serif);line-height:1.25!important;margin:38px 0}
@media(max-width:1050px){.order-configurator .product-image{height:160px}.order-configurator .product-card strong{font-size:23px}}
@media(max-width:760px){.mobile-edition-preview{display:block;margin:15px 0}.config-summary{display:none}.review-edition-art{margin-inline:-5%}.order-configurator .product-options{grid-template-columns:1fr;gap:12px}.order-configurator .product-card{display:grid;grid-template-columns:40% 1fr;align-items:center;column-gap:18px;padding:9px}.order-configurator .product-image{grid-row:1/3;height:140px;margin:0}.order-configurator .product-card strong{font-size:27px;align-self:end;padding:0 15px 5px 0}.order-configurator .product-card small{font-size:11px;align-self:start;padding:0 16px 0 0}.choice-mark{left:18px;right:auto;top:18px}.chosen-edition{grid-template-columns:1fr}.chosen-edition>.button{grid-column:1;grid-row:auto;margin-top:20px}.personal-lettering strong{font-size:4cqw}.poster-style-choice img{height:80px}.poster-style-choice strong{font-size:19px}}
@media(max-width:480px){.order-configurator .product-image{height:122px}.order-configurator .product-card strong{font-size:25px}.family-upload{padding:20px}.order-configurator .family-upload h3{font-size:23px}.chosen-edition>p{font-size:25px}.chosen-edition>.button{width:100%}.copy-counter{margin-bottom:16px}.poster-style-choices{gap:7px}}
.personal-edition[data-long-title=true] .personal-lettering strong{font-size:2.6cqw}
.personal-edition[data-long-title=true] .personal-tree-title strong{font-size:1.3cqw}
.personal-edition[data-long-title=true][data-product=line] .personal-tree-title strong{font-size:2.6cqw}
