.header{position:sticky;top:0;z-index:20;background:#fafaf6f5;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.header nav{gap:19px}.shop-intro{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:24px}.category-tabs{display:flex;gap:8px;flex-wrap:wrap}.category-tab{border:1px solid var(--line);background:white;border-radius:30px;padding:10px 20px;color:var(--ink)}.category-tab[aria-pressed=true]{background:var(--navy);border-color:var(--navy);color:white}.search-box{min-width:230px}input[type=text],input[type=tel],input[type=password],input[type=search],textarea{display:block;width:100%;border:1px solid var(--line);padding:12px;border-radius:7px;background:white;color:var(--ink);font:inherit;margin-top:7px}textarea{min-height:95px;resize:vertical}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.product-card{border:1px solid var(--line);background:white;border-radius:16px;overflow:hidden}.product-art{height:230px;background:#ddecf6;position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;overflow:hidden}.product-art:before{content:'';position:absolute;width:105px;height:140px;background:linear-gradient(#b8dbe8 45%,#6996ae 46%,#426e83 75%);border:9px solid white;border-bottom-width:30px;transform:rotate(-14deg);left:22%;box-shadow:0 12px 20px #10458018}.product-art:after{content:'';position:absolute;width:105px;height:140px;background:linear-gradient(#f0d8c2 42%,#82b7c8 43%,#2b6e8b 80%);border:9px solid white;border-bottom-width:30px;transform:rotate(13deg);right:20%;top:58px;box-shadow:0 12px 20px #10458018}.product-art.polaroid{background:#ebeee4}.product-art.finish{background:#e4e9f6}.product-art.finish:before{background:#2563a3;transform:rotate(-8deg)}.product-art.finish:after{background:#b5cfe7;opacity:.6}.product-category{position:absolute;left:15px;top:15px;font-size:10px;background:white;padding:4px 10px;border-radius:20px;z-index:2}.product-symbol{position:absolute;right:20px;top:12px;font:38px var(--hand)}.product-art>.handwritten{position:absolute;bottom:12px;right:18px;font-size:18px;z-index:2}.product-content{padding:23px}.product-content>small{font-size:10px;color:var(--muted)}.product-content h3{font-size:19px;margin:8px 0}.product-content p{font-size:12px;color:var(--muted);min-height:65px}.product-content strong{display:block;margin-bottom:17px;font-size:14px;color:var(--blue)}.review-section{background:#edf5fb}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.review-card,.review-empty{background:white;border:1px solid var(--line);padding:26px;border-radius:14px}.review-empty{grid-column:1/-1;text-align:center;font:25px var(--hand);padding:45px}.review-card p{margin:16px 0;font-size:13px}.review-card small{display:block;color:var(--muted)}.stars{color:#a06c18;letter-spacing:3px}.review-form{margin-top:30px;background:white;border:1px solid var(--line);border-radius:14px;padding:26px;max-width:720px}.review-form h3{margin-bottom:18px}.review-form button{margin-top:16px}.customer-form{border-top:1px dashed var(--line);margin-top:22px;padding-top:18px}.customer-form label{display:block;margin:12px 0}.submit-order{margin-top:16px}.result{font-size:12px;white-space:pre-wrap;color:var(--blue)}.mobile-nav{display:none}.admin-link{font-size:11px;text-decoration:underline}.admin-shell{max-width:1300px;margin:auto;padding:32px}.admin-top{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:30px}.admin-top h1{font-size:28px;letter-spacing:-1px;margin:0}.auth-card{max-width:460px;margin:70px auto;padding:35px;background:white;border:1px solid var(--line);border-radius:15px}.auth-card h1{font-size:26px;letter-spacing:-1px}.auth-card button{margin-top:20px}.dashboard-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:25px 0}.stat{padding:22px;background:white;border:1px solid var(--line);border-radius:12px}.stat strong{display:block;font-size:27px}.admin-tabs{display:flex;gap:10px;margin:25px 0}.admin-card{background:white;border:1px solid var(--line);border-radius:12px;padding:24px;margin-bottom:16px}.admin-card h3{margin-bottom:10px}.admin-card p{white-space:pre-wrap}.admin-card select{max-width:250px}.admin-card small{display:block;color:var(--muted)}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.admin-form label{display:block;margin:12px 0}.admin-form input[type=checkbox]{width:auto}.admin-form .button{margin-top:12px}.admin-controls{display:flex;gap:10px;margin-top:15px;flex-wrap:wrap}[hidden]{display:none!important}@media(max-width:900px){.header nav{display:none}.mobile-nav{display:flex;justify-content:center;gap:20px;padding:12px 15px;border-bottom:1px solid var(--line);font-size:11px;background:#edf5fb}.product-grid{grid-template-columns:repeat(2,1fr)}.review-grid{grid-template-columns:1fr 1fr}.admin-grid{grid-template-columns:1fr}}@media(max-width:600px){.product-grid,.review-grid{grid-template-columns:1fr}.shop-intro{align-items:stretch;flex-direction:column}.product-content p{min-height:0}.dashboard-stats{grid-template-columns:1fr 1fr}.admin-shell{padding:18px}.admin-top{flex-wrap:wrap}.admin-tabs{flex-wrap:wrap}.admin-top h1{font-size:24px}}
/* Direction derived from the supplied PDF references; Memories.An branding. */
:root{--paper:#fffefa;--line:#dce5ec;--serif:'Lora Local','Times New Roman',serif;--navy:#163f67;--blue:#2a6397;--ink:#21425f}body{font-size:14px;background:var(--paper)}.announcement{background:transparent;color:var(--muted);font-size:10px;letter-spacing:1.5px;padding-top:22px}.header{background:#fffefaf5;padding-top:18px;padding-bottom:22px;max-width:1280px}.brand>span{font-family:var(--serif);font-size:28px}.brand small{font-size:8px;letter-spacing:1.4px}.wrap{max-width:1200px}.hero{min-height:620px;gap:60px;padding-top:70px;padding-bottom:80px}.hero h1{font:clamp(42px,4.7vw,65px)/1.13 var(--serif);letter-spacing:-2px}.hero h1 em,h2 em{font-family:var(--serif);font-size:1em;font-style:italic;color:var(--blue)}.hero-copy>p{font-size:14px;line-height:1.9;max-width:490px}.hero-pill{display:inline-block;border:1px solid #bdd0df;border-radius:30px;padding:9px 15px;font-size:9px;letter-spacing:1.4px}.button{border-radius:5px;padding:15px 23px}.hero .hero-art{background:#e2eef6;border-radius:48% 48% 8px 8px;box-shadow:12px 14px 0 #edf3f7;height:445px}.hero .orbit{background:#d4e5f0;left:20px;top:25px;width:88%;height:85%}.hero .photo-back{left:28px;top:50px}.hero .photo-front{right:12px;top:160px}.hero .art-caption{bottom:10px;right:18px;font-size:18px}.hero .round-stamp{background:var(--paper);left:-20px;bottom:10px;z-index:3}.ribbon{background:transparent;padding-top:22px;padding-bottom:22px;color:var(--navy);font-weight:500}.section{padding-top:85px;padding-bottom:85px}h2{font:clamp(32px,3.7vw,46px)/1.18 var(--serif);letter-spacing:-1.3px}.section-heading>p{font-size:13px}.section-heading .eyebrow{font-size:10px;letter-spacing:2px}.product-card{border-color:var(--line);border-radius:9px;transition:box-shadow .2s,transform .2s}.product-card:hover{transform:translateY(-3px);box-shadow:0 15px 30px #163f6709}.product-art{height:245px}.product-content{padding:25px}.product-content h3{font:25px/1.25 var(--serif);letter-spacing:-.6px}.product-content p{font-size:12px;min-height:65px}.product-content>strong{border-top:1px solid var(--line);padding-top:16px}.product-content .button{padding:0;background:transparent;color:var(--blue);border:0;text-decoration:underline;text-underline-offset:5px}.category-tab{background:transparent;font-size:12px}.category-tab[aria-pressed=true]{background:var(--light);color:var(--navy);border-color:#8eb1ce}.all-products{display:none}.story-section{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.story-art{height:420px;position:relative;background:#edf4f8;padding:45px;transform:rotate(-3deg);box-shadow:12px 15px 0 #dce9f2}.story-frame{height:100%;padding:18px 18px 35px;border:10px solid #c5d8e6;background:white;box-shadow:0 12px 25px #183d6410}.story-frame .scene{height:100%}.story-frame>span{font:17px var(--hand)}.story-stamp{position:absolute;bottom:-20px;right:-15px;background:var(--paper);width:110px;height:110px;border-radius:50%;display:grid;place-content:center;text-align:center;font:20px/1.1 var(--serif);font-style:italic;color:var(--blue)}.story-copy>p{color:var(--muted);font-size:13px;line-height:1.95;margin-top:23px}.story-copy .button{margin-top:10px;background:transparent;color:var(--blue)}.review-section{background:#f3f8fc}.review-grid{display:block;columns:3;column-gap:22px}.review-card{break-inside:avoid;margin:0 0 22px;box-shadow:0 10px 30px #163f6705;border-radius:9px}.review-card .review-image{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in;margin-bottom:20px}.review-image img{width:100%;height:auto;display:block;border-radius:5px}.review-empty{column-span:all;font:23px/1.6 var(--serif)}.review-form{margin:40px auto 0}.site-footer{display:block;padding-top:65px;padding-bottom:25px}.footer-columns{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:65px;padding-bottom:50px}.footer-columns h3{font-size:10px;letter-spacing:1.8px;margin-bottom:24px}.footer-columns a:not(.brand){display:block;margin:12px 0;font-size:12px}.footer-columns p{font-size:12px;line-height:1.9;margin-top:20px}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:10px}.contact{background:#e7f1f8;color:var(--navy);padding:65px 24px}.contact .button{background:var(--navy);color:white;border-color:var(--navy)}.contact h2{font-family:var(--serif);font-size:36px}.how-section{background:var(--paper);border-top:1px solid var(--line)}.how-section .eyebrow,.how-section h2{text-align:center}.steps{gap:35px}.steps h3{font-family:var(--serif);font-size:21px}.steps p{font-size:12px}.faq h2{font-family:var(--serif)}dialog{border:1px solid var(--line);border-radius:12px;padding:40px;max-width:650px;width:calc(100% - 32px);max-height:90vh;overflow:auto;color:var(--ink);background:var(--paper)}dialog::backdrop{background:#10293fd0;backdrop-filter:blur(5px)}.dialog-close{position:absolute;right:12px;top:10px;width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:white;color:var(--navy);font-size:22px}.detail-heading{font:36px/1.2 var(--serif);margin:20px 0}.detail-price{display:block;font-size:20px;margin:20px 0}.detail-description{line-height:1.9;color:var(--muted)}#image-dialog{max-width:1000px;text-align:center}#full-review-image{max-width:100%;max-height:70vh;object-fit:contain}.page-intro{padding:25px 0 45px;max-width:700px}.page-intro h2{font-size:56px}.page-intro p{font-size:15px;color:var(--muted)}body[data-page=home] .shop-intro,body[data-page=home] #dat-in,body[data-page=home] #bang-gia,body[data-page=home] #feedback{display:none}body[data-page=home] .all-products{display:inline-block;margin:-10px 0 28px}body[data-page=products] main>*,body[data-page=feedback] main>*,body[data-page=story] main>*,body[data-page=order] main>*{display:none}body[data-page=products] #san-pham,body[data-page=feedback] #feedback,body[data-page=story] #cau-chuyen,body[data-page=order] #dat-in,body[data-page=order] #bang-gia,body[data-page=order] #cach-dat,body[data-page=order] .faq{display:block}body[data-page=story] #cau-chuyen{display:grid;padding-top:90px;padding-bottom:110px}body[data-page=feedback] #feedback{background:transparent}body[data-page=products] .all-products{display:none}.header a[aria-current=page]{color:var(--blue);text-decoration:underline;text-underline-offset:7px}.image-upload-note{font-size:11px;color:var(--muted)}@media(max-width:1000px){.hero{gap:30px}.hero .hero-art{transform:scale(.88);transform-origin:right center}.story-section{gap:40px}.story-art{height:350px;padding:30px}.review-grid{columns:2}.header nav{font-size:11px;gap:14px}}@media(max-width:760px){.hero{grid-template-columns:1fr;gap:20px;padding-top:40px}.hero h1{font-size:46px;letter-spacing:-1.8px}.hero .hero-art{margin:10px auto 0;width:340px;max-width:100%;height:380px;transform:scale(.94);transform-origin:center}.hero .photo-back{left:15px;top:30px}.hero .photo-front{top:125px}.hero-pill{font-size:8px;letter-spacing:1px}.story-section,body[data-page=story] #cau-chuyen{grid-template-columns:1fr;gap:50px;padding-top:55px;padding-bottom:60px}.story-art{max-width:420px;width:90%;margin:auto;height:350px}.footer-columns{grid-template-columns:1fr 1fr;gap:35px}.footer-columns>div:first-child{grid-column:1/-1}.review-grid{columns:1}.page-intro h2{font-size:42px}.page-intro{padding-bottom:25px}.product-content h3{font-size:25px}.section{padding-top:55px;padding-bottom:55px}.contact h2{font-size:30px}.footer-bottom{flex-wrap:wrap}.announcement{font-size:8px;padding-top:13px}.header{padding-bottom:14px}dialog{padding:35px 22px}.detail-heading{font-size:29px}}
.product-count{font-size:12px;color:var(--muted);margin:0}.shop-intro{flex-wrap:wrap}.shop-intro>.product-count{flex-basis:100%;margin-bottom:3px}
.product-photo{display:block;width:100%;height:245px;object-fit:cover;background:#e8f1f7}.admin-product-photo{display:block;max-width:240px;max-height:200px;object-fit:contain;margin-bottom:15px}.cart-row input[type=number]{max-width:105px;padding:7px;min-height:36px;font-size:12px}.cart-row label{display:block;margin-top:12px}.info-section{display:none}.info-section h1{font:clamp(38px,5vw,60px)/1.15 var(--serif);letter-spacing:-1.5px;max-width:750px}.info-section h1 em{font-family:var(--serif);color:var(--blue)}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin:45px 0}.info-grid h2{font-size:27px;margin-bottom:17px}.info-grid p{font-size:13px;color:var(--muted);line-height:1.95}body[data-page=info] main>*{display:none}body[data-page=info] #thong-tin{display:block}@media(max-width:760px){.info-grid{grid-template-columns:1fr;gap:20px}.product-photo{height:260px}}
.contact-trigger{margin-top:12px}.contact-links{display:grid;gap:12px;margin:25px 0}.contact-channel{display:flex;justify-content:space-between;border:1px solid var(--line);padding:17px 20px;border-radius:8px;background:#edf5fb;font-weight:600}.contact-channel:hover{background:var(--light)}#contact-title{font-size:35px}#contact-context{color:var(--muted);margin-top:20px}#product-detail>.text-link{display:block;margin-top:20px;width:fit-content}

/* Vietnamese typography: consistent glyphs and room for stacked tone marks. */
body{font-synthesis:none}button,input,select,textarea{font-family:var(--sans)}
.hero h1{line-height:1.3;letter-spacing:-1.2px}h2{line-height:1.35;letter-spacing:-.7px}
.hero h1 em,h2 em{line-height:inherit}.brand>span{line-height:1.35}.product-content h3{line-height:1.45;letter-spacing:-.3px}
.detail-heading{line-height:1.4}.photo>span,.art-caption,.handwritten,.story-frame>span{font-family:var(--hand);font-style:italic}
.photo>span{font-size:12px}.art-caption{font-size:15px!important}.story-frame>span{font-size:12px}
.info-section h1{line-height:1.35}.eyebrow{line-height:1.8}summary{line-height:1.8}
