:root{--ink:#1e342f;--muted:#667872;--pine:#25473c;--pine-dark:#19392f;--mint:#d8ebdf;--cream:#f8f6f0;--line:#e7ebe5;--paper:#ffffff;--orange:#e39e63;--shadow:0 18px 55px rgba(24,54,42,.085);--radius:19px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fcfcf9;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #e8aa60;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.045em}p{line-height:1.64}small{font-size:.8rem}.shell{max-width:1180px;padding:0 25px;margin:0 auto}.topbar{background:var(--pine-dark);color:white;font-size:.78rem;padding:10px 0;text-align:center;letter-spacing:.015em}.topbar span{color:#e4bb83;font-weight:700}.nav{height:81px;background:#fff;border-bottom:1px solid var(--line)}.nav-inner{display:flex;align-items:center;justify-content:space-between;height:100%;gap:24px}.brand{display:flex;align-items:center;gap:11px;font-weight:800;letter-spacing:-.035em;font-size:1.22rem;white-space:nowrap}.brand-mark{width:43px;height:43px;display:flex;align-items:center;justify-content:center;background:var(--pine);color:#f4ddb5;border-radius:13px;font-size:25px;transform:rotate(-4deg)}.brand-mark span{transform:rotate(4deg)}.nav-links{display:flex;gap:30px;align-items:center}.nav-links a{font-weight:600;color:#4e6259;font-size:.93rem}.nav-links a:hover,.nav-links .active{color:#0d644b}.nav-actions{display:flex;align-items:center;gap:10px}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:700;border-radius:12px;padding:13px 19px;min-height:44px;font-size:.91rem;border:1px solid transparent;background:var(--pine);color:#fff;transition:transform .15s,background .15s,border .15s}.button:hover{transform:translateY(-1px);background:#1a3b30}.button-outline{border-color:#d6e1d8;background:#fff;color:var(--pine)}.button-outline:hover{background:#eef5ee}.button-light{background:#fff;color:var(--pine)}.button-light:hover{background:#f3f8f2}.button-small{padding:10px 14px;font-size:.86rem;min-height:39px}.button-ghost{background:none;color:var(--pine);padding:8px;border:none}.button:disabled{opacity:.5;cursor:not-allowed}.mobile-nav{display:none}.hero{background:linear-gradient(128deg,#f4f4e9 0%,#f6f6ee 55%,#edf1e7 100%);overflow:hidden}.hero-inner{min-height:480px;display:grid;grid-template-columns:1.12fr .88fr;align-items:center;gap:20px;padding-top:38px;padding-bottom:44px}.eyebrow{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:#548170;font-weight:800}.hero h1{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.065em;font-weight:500;font-size:clamp(3.2rem,6.2vw,5.6rem);line-height:1.06;margin:16px 0 20px}.hero h1 em{font-style:italic;color:#bb8054}.hero-copy{max-width:560px;color:#52655b;font-size:1.09rem;line-height:1.75}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:25px 0 24px}.trust-line{display:flex;align-items:center;gap:12px;font-size:.82rem;font-weight:600;color:#6a7b6d}.avatars{display:flex;padding-left:8px}.avatar{border-radius:50%;width:27px;height:27px;background:#ecd8c0;border:2px solid #f4f4e9;margin-left:-7px;display:flex;align-items:center;justify-content:center;font-size:14px}.hero-art{position:relative;min-height:370px;display:flex;align-items:center;justify-content:center}.orb{position:absolute;inset:15px 15px 10px 10px;border-radius:50%;background:radial-gradient(circle at 38% 33%,#e1ebdd,#d0e3d0 64%,#b6d4c5 100%)}.gift-large{position:relative;font-size:185px;filter:drop-shadow(0 20px 15px rgba(46,82,57,.12));transform:rotate(-9deg);line-height:1}.float-card{position:absolute;background:#fff;border-radius:14px;box-shadow:var(--shadow);padding:14px 17px;display:flex;align-items:center;gap:10px;font-size:.83rem;font-weight:700}.float-card small{display:block;color:#7a887f;font-weight:500;margin-top:3px}.float-one{right:0;top:60px;transform:rotate(5deg)}.float-two{left:5px;bottom:40px;transform:rotate(-5deg)}.float-emoji{font-size:26px}.section{padding:72px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:28px}.section-head h2,.page-hero h1{font-family:Georgia,"Times New Roman",serif;font-weight:500;font-size:clamp(2.1rem,4vw,3.2rem);margin:10px 0;line-height:1.14}.section-head p{color:var(--muted);max-width:570px;margin:0}.text-link{color:#29634c;font-weight:800;font-size:.9rem}.category-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:13px}.category-tile{border:1px solid #e8ede5;border-radius:17px;padding:22px 12px;background:white;text-align:center;transition:transform .15s,box-shadow .15s}.category-tile:hover{box-shadow:var(--shadow);transform:translateY(-3px)}.category-emoji{font-size:36px;display:block;margin-bottom:12px}.category-tile strong{font-size:.85rem;display:block}.category-tile small{color:#819087;display:block;margin-top:5px}.light-section{background:var(--cream)}.gift-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.gift-card{background:#fff;border:1px solid #e5ebe4;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 4px 14px rgba(21,47,37,.025)}.gift-illustration{position:relative;min-height:180px;display:flex;align-items:center;justify-content:center;background:#eaf1e9;overflow:hidden}.gift-illustration:before{content:"";position:absolute;width:210px;height:210px;border:1px solid rgba(255,255,255,.6);border-radius:50%;left:-45px;top:25px}.gift-illustration:after{content:"";position:absolute;width:130px;height:130px;border:1px solid rgba(255,255,255,.6);border-radius:50%;right:-42px;top:-15px}.gift-illustration .item-emoji{font-size:83px;position:relative;z-index:1;filter:drop-shadow(0 9px 3px rgba(0,0,0,.06))}.shade-0{background:#efe6d7}.shade-1{background:#dce9e7}.shade-2{background:#f1e4e6}.shade-3{background:#e5e4f0}.shade-4{background:#e7eace}.shade-5{background:#e8ece3}.gift-body{padding:17px;display:flex;flex-direction:column;flex:1}.gift-type{font-size:.71rem;color:#53846a;text-transform:uppercase;letter-spacing:.085em;font-weight:800}.gift-body h3{font-size:1.07rem;margin:9px 0 8px;line-height:1.29;letter-spacing:-.025em}.gift-body p{font-size:.83rem;color:#708076;line-height:1.5;flex:1;margin-bottom:14px}.gift-details{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:15px}.pill{display:inline-flex;align-items:center;padding:6px 10px;background:#f2f5f0;border-radius:99px;color:#5b7264;font-size:.73rem;font-weight:700}.gift-actions{display:flex;align-items:center;gap:7px;border-top:1px solid #eaf0e8;padding-top:13px;flex-wrap:wrap}.mini-action{border:1px solid #dce7da;background:#fff;color:#315446;padding:8px 11px;border-radius:9px;font-weight:750;font-size:.76rem}.mini-action:hover,.mini-action.selected{background:#e3eee3}.mini-action.selected{color:#165d41;border-color:#aad1b8}.mini-action.shop{background:#244b3d;color:#fff;border-color:#244b3d}.gift-action-note{font-size:.74rem;color:#789083;margin-top:9px}.how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.how-card{background:white;border:1px solid var(--line);padding:27px;border-radius:19px}.how-num{color:#bd8859;font-family:Georgia,serif;font-size:2.1rem}.how-card h3{margin:14px 0 7px}.how-card p{font-size:.88rem;color:#6b7c70;margin:0}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.guide-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column}.guide-art{height:130px;background:linear-gradient(135deg,#e0ebe2,#f0e9d9);display:flex;align-items:center;justify-content:center;font-size:58px}.guide-card-body{padding:20px;display:flex;flex-direction:column;flex:1}.guide-card h3{font-size:1.1rem;line-height:1.3;margin:9px 0 10px}.guide-card p{font-size:.84rem;color:#738277;flex:1}.cta-band{background:var(--pine);color:#fff;border-radius:24px;padding:40px 48px;display:flex;align-items:center;justify-content:space-between;gap:35px}.cta-band h2{font-family:Georgia,serif;font-size:2.5rem;font-weight:500;margin-bottom:9px}.cta-band p{opacity:.76;margin:0}.footer{background:#17372d;color:#fff;padding:48px 0 25px}.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr 1.3fr;gap:34px}.footer h4{font-size:.9rem;margin-bottom:15px}.footer p,.footer a,.footer small{color:#c1d1c6;font-size:.82rem}.footer a{display:block;margin:9px 0}.footer .brand{color:#fff}.footer-bottom{border-top:1px solid #34584a;margin-top:32px;padding-top:19px;color:#bdcec3;font-size:.76rem;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}.page-hero{background:#f4f6ed;padding:58px 0 47px}.page-hero p{color:#67786d;max-width:700px;margin:0}.content-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:34px}.panel{background:white;border:1px solid #e2e9e0;border-radius:20px;padding:24px}.filter-label{font-size:.78rem;color:#6f7d73;font-weight:800;letter-spacing:.065em;text-transform:uppercase;margin-bottom:12px}.option-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.option{border:1.5px solid #e2e8df;background:#fff;text-align:left;border-radius:13px;padding:13px 15px;font-size:.9rem;font-weight:750;color:#41594c}.option:hover,.option.is-selected{border-color:#6aa88a;background:#f1f8ef;color:#27533e}.option small{display:block;color:#8a948c;font-weight:500;margin-top:3px}.option.chip{font-size:.82rem;padding:10px 12px;text-align:center}.wizard{max-width:870px;margin:38px auto 80px;background:white;border:1px solid #e4ebe2;border-radius:22px;padding:39px;box-shadow:var(--shadow)}.progress{display:flex;gap:7px;margin-bottom:24px}.progress span{height:5px;border-radius:100px;flex:1;background:#e9eee7}.progress span.done{background:#33745a}.step-count{font-size:.78rem;color:#779183;font-weight:800}.wizard h2{font-family:Georgia,serif;font-weight:500;font-size:2rem;margin:10px 0}.wizard-sub{color:#6d7c70;margin-bottom:28px}.field-group{margin:25px 0}.field-title{font-size:.87rem;font-weight:800;margin-bottom:12px}.wizard-buttons{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:30px;padding-top:23px;border-top:1px solid var(--line)}.step-help{font-size:.82rem;color:#7a8c7c}.results-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:22px}.results-head h2{margin:0;font-family:Georgia,serif;font-weight:500;font-size:2.4rem}.results-text{color:#6b8071;font-size:.9rem}.field-input{width:100%;padding:12px 14px;border:1px solid #dce5da;border-radius:11px;color:#25473c;background:white}.field-input:focus{border-color:#559676}.filter-panel{position:sticky;top:20px;align-self:start}.filter-group{margin:0 0 23px}.filter-group label{display:block;font-size:.84rem;font-weight:700;margin:0 0 9px}.filter-chips{display:flex;gap:7px;flex-wrap:wrap}.filter-chips button{padding:7px 11px;border:1px solid #dce6db;border-radius:99px;background:white;font-size:.79rem;color:#4b6355}.filter-chips button.selected{background:#244b3d;color:#fff;border-color:#244b3d}.account-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:26px}.stack{display:flex;flex-direction:column;gap:14px}.stack .field-input{margin-top:7px}.callout{background:#eef5ed;padding:19px;border:1px solid #dceade;border-radius:16px;color:#385d47;font-size:.88rem}.muted{color:#718074}.empty{padding:35px 18px;border:1px dashed #cedbce;background:white;border-radius:16px;text-align:center;color:#64786a}.empty strong{display:block;color:#284d3d;margin-bottom:8px}.saved-row{padding:15px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px;justify-content:space-between}.saved-row:last-child{border:0}.saved-icon{font-size:31px;background:#f0f3e9;padding:12px;border-radius:12px}.comparison-table{width:100%;border-collapse:collapse;table-layout:fixed}.comparison-table th,.comparison-table td{padding:16px 14px;border-bottom:1px solid #e5ebe3;vertical-align:top;text-align:left;font-size:.86rem}.comparison-table thead th{font-size:1rem}.comparison-table tbody th{width:130px;color:#698170;font-size:.78rem}.comparison-table td{line-height:1.5}.comparison-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:16px;background:#fff}.compare-pick{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0 0 25px}.compare-pick .pill{background:#e6f0e7}.article-layout{display:grid;grid-template-columns:minmax(0,730px) 280px;gap:65px}.article{font-size:1rem;color:#455d4f}.article p{line-height:1.88}.article h2{color:#224537;font-family:Georgia,serif;font-weight:500;font-size:1.7rem;margin:35px 0 14px}.article h1{font-family:Georgia,serif;font-weight:500;font-size:3.2rem;line-height:1.16;color:#234333}.article .intro{font-size:1.15rem;color:#647667}.article-aside{position:sticky;top:23px;align-self:start}.notice{padding:14px 17px;background:#fff6e6;border:1px solid #f0dfc4;border-radius:12px;color:#84633b;font-size:.83rem;margin-bottom:20px}.toast{position:fixed;bottom:22px;right:22px;background:#244b3d;color:#fff;padding:12px 18px;border-radius:12px;z-index:20;box-shadow:var(--shadow);max-width:350px;font-size:.9rem}.hide{display:none!important}@media(max-width:950px){.nav-links{gap:16px}.hero-inner{grid-template-columns:1.1fr .9fr}.hero-art{min-height:300px}.gift-large{font-size:155px}.category-grid{grid-template-columns:repeat(3,1fr)}.gift-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.footer-top{grid-template-columns:1.5fr 1fr 1fr}.footer-top>div:last-child{grid-column:1/-1}.article-layout{gap:25px;grid-template-columns:minmax(0,1fr) 240px}}@media(max-width:720px){.shell{padding:0 18px}.topbar{font-size:.69rem}.nav{height:auto;padding:12px 0}.nav-inner{flex-wrap:wrap;gap:11px}.nav-links{order:3;width:100%;overflow-x:auto;gap:20px;padding:4px 0 2px}.nav-links a{white-space:nowrap;font-size:.81rem}.brand{font-size:1rem}.brand-mark{height:37px;width:37px}.nav-actions .button{padding:8px 11px;font-size:.78rem;min-height:35px}.hero-inner{grid-template-columns:1fr;gap:0;padding-top:48px}.hero h1{font-size:3.65rem}.hero-art{height:250px;min-height:250px}.gift-large{font-size:140px}.orb{inset:10px 18%}.float-one{right:4%;top:21px}.float-two{left:7%;bottom:23px}.section{padding:50px 0}.section-head{align-items:start;flex-direction:column;gap:10px}.category-grid{grid-template-columns:repeat(3,1fr);gap:8px}.category-tile{padding:17px 5px}.gift-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.gift-illustration{min-height:130px}.gift-illustration .item-emoji{font-size:62px}.gift-body{padding:13px}.gift-body h3{font-size:.94rem}.gift-body p{font-size:.78rem}.how-grid,.guide-grid{grid-template-columns:1fr}.cta-band{padding:30px;display:block}.cta-band .button{margin-top:20px}.footer-top{grid-template-columns:1fr 1fr}.footer-top>div:first-child{grid-column:1/-1}.content-layout,.account-grid,.article-layout{grid-template-columns:1fr}.filter-panel,.article-aside{position:static}.wizard{margin:22px auto 50px;padding:22px}.option-grid{grid-template-columns:repeat(2,1fr)}.option{padding:12px}.page-hero{padding:38px 0}.article h1{font-size:2.4rem}.comparison-table{min-width:540px}}@media(max-width:390px){.gift-grid{grid-template-columns:1fr}.category-grid{grid-template-columns:repeat(2,1fr)}.hero h1{font-size:3.1rem}.nav-actions{margin-left:auto}}

/* Source and transparency annotations for named products. */
.source-note{display:block;margin-top:10px;color:#64766e;font-size:.74rem;line-height:1.45}

/* Release 0.3 — product details, licensed imagery, comparisons and random picker */
.gift-illustration{display:flex;text-decoration:none;align-items:center;justify-content:center;overflow:hidden}
.product-photo{height:100%;width:100%;object-fit:contain;background:#f6f6f3;padding:6px}
.gift-card h3 a{color:inherit;text-decoration:none}.gift-card h3 a:hover{text-decoration:underline}
.gift-actions a.mini-action{text-decoration:none;display:inline-flex;align-items:center}
.detail-grid{display:grid;grid-template-columns:minmax(250px,420px) minmax(280px,1fr);gap:44px;align-items:start;padding-bottom:28px}
.detail-facts{border-collapse:collapse;width:100%;margin:15px 0 24px}
.detail-facts th,.detail-facts td{border-bottom:1px solid var(--line);padding:11px 10px;text-align:left;vertical-align:top}
.detail-facts th{width:43%;color:var(--pine)}
.compare-section th{text-align:left;background:var(--mint)}
.random-panel{max-width:970px}.random-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.random-controls label{display:block;font-weight:600}.random-controls select{margin-top:8px;width:100%;min-width:0}
.random-result{max-width:410px;margin:20px auto}.random-result .gift-illustration{min-height:220px}
@media (max-width:760px){.detail-grid{grid-template-columns:1fr}.random-controls{grid-template-columns:1fr}}

/* Release 0.5: clear and compact affiliate identification, without repetitive under-button paragraphs */
.affiliate-site-notice{font-size:.78rem;padding:8px 18px;text-align:center;background:#edf3ee;color:#25473c;border-bottom:1px solid #dee6df}
.affiliate-site-notice a{color:inherit;text-decoration:underline;text-underline-offset:2px;margin-left:7px}
.affiliate-buy{border:1px solid #e0e8e0;border-radius:15px;padding:18px 20px;margin:22px 0;background:#fafcf9}
.affiliate-buy h3{margin:0 0 5px}.affiliate-buy .button{display:inline-flex;align-items:center;gap:9px}
.affiliate-copy{font-size:.86rem;color:#4f625a;margin:8px 0 15px;line-height:1.5}
.affiliate-flag{display:inline-flex;vertical-align:middle;padding:2px 6px;background:#f3e5d1;color:#574321;border-radius:5px;font-size:.66rem;font-weight:800;letter-spacing:.02em;line-height:1.3}
.button .affiliate-flag{background:rgba(255,255,255,.94);color:#233e34}
.retailer-link{display:inline-flex;align-items:center;gap:5px;flex-wrap:wrap}
@media(max-width:560px){.affiliate-site-notice{padding:9px 12px;font-size:.72rem}}

/* Release 0.5.1 — compact, visible commission language in the top-right header */
.topbar{padding:7px 0;text-align:left;line-height:1.4}
.topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}
.topbar-message{font-size:.76rem;white-space:nowrap}
.topbar-affiliate{margin-left:auto;text-align:right;color:#eef3ee;font-size:.69rem;line-height:1.4;white-space:nowrap}
.topbar-affiliate a{text-decoration:underline;text-underline-offset:2px;margin-left:5px;color:#f5e1b8}
/* Three product-card actions should remain on a single line. */
.gift-card .gift-actions{flex-wrap:nowrap;gap:5px}
.gift-card .gift-actions .mini-action{white-space:nowrap;flex:0 1 auto;min-width:0;padding:7px 7px;font-size:.71rem;line-height:1.35}
.retailer-link-wrap{display:flex;align-items:baseline;gap:4px 7px;flex-wrap:wrap}
.retailer-link-wrap .retailer-link{white-space:nowrap;font-weight:700}
.affiliate-inline{color:#596c60;font-size:.69rem;line-height:1.4}
@media(max-width:1120px){.topbar-message{font-size:.7rem}.topbar-affiliate{font-size:.69rem}}
@media(max-width:850px){.topbar-message{display:none}.topbar-inner{justify-content:flex-end}.topbar-affiliate{white-space:normal;font-size:.7rem}}
@media(max-width:720px){.gift-grid{grid-template-columns:1fr}.gift-card .gift-actions .mini-action{font-size:.78rem;padding:9px 11px}}

/* Release 0.5.2 — unambiguous high-contrast header, with no promotional slogan. */
.topbar{background:#183c30;color:#fff}
.topbar-inner{justify-content:flex-end;min-height:18px}
.topbar-affiliate,.topbar-affiliate span{color:#fff!important;font-size:.72rem;font-weight:500}
.topbar-affiliate a{color:#fff!important;text-decoration:underline;text-underline-offset:3px}
.guide-product-table{width:100%;border-collapse:collapse;margin:18px 0 29px}
.guide-product-table th,.guide-product-table td{border-bottom:1px solid #e1e9e2;text-align:left;padding:13px 12px;font-size:.89rem;vertical-align:top}
.guide-product-table th{background:#eef5ee;color:#24483b}
.guide-product-table td a{font-weight:700}
.guide-note{background:#f0f6ef;border-left:4px solid #42785c;padding:18px 20px;margin:24px 0;line-height:1.7}
@media(max-width:650px){.guide-product-table{display:block;overflow-x:auto}.guide-product-table th,.guide-product-table td{min-width:130px}.topbar-affiliate{font-size:.71rem;white-space:normal}}
