:root{color-scheme:light;font-family:Avenir Next,Noto Sans Thai,Noto Sans SC,sans-serif;--ink: #2f261f;--muted: #75675b;--paper: #f4efe3;--paper-strong: #fffaf0;--lacquer: #3f2a18;--saffron: #c8932c;--leaf: #52684f;--clay: #b45f42;--line: rgba(63, 42, 24, .18);--shadow: 0 24px 70px rgba(63, 42, 24, .16)}*{box-sizing:border-box}body{margin:0;min-width:320px;overflow-x:hidden;color:var(--ink);background:linear-gradient(90deg,rgba(63,42,24,.04) 1px,transparent 1px),linear-gradient(180deg,rgba(63,42,24,.05) 1px,transparent 1px),var(--paper);background-size:42px 42px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.topbar{position:sticky;top:0;z-index:10;display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;padding:14px clamp(16px,4vw,42px);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--paper-strong) 88%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.topbar>*{min-width:0}.brand{display:inline-flex;align-items:center;gap:10px}.brand-mark{display:grid;width:48px;height:48px;place-items:center;color:var(--saffron);background:var(--lacquer);border-radius:4px;font-weight:800}.brand strong,.brand small{display:block;line-height:1.1}.brand small{color:var(--muted);font-size:12px}.nav-links,.language-switcher{display:flex;align-items:center;gap:8px}.nav-links{justify-content:center}.mobile-bottom-nav{display:none}.nav-links a,.language-switcher button{border:0;background:transparent;color:var(--muted);padding:9px 10px;border-radius:4px}.nav-links a:hover,.nav-links a.active,.language-switcher button:hover,.language-switcher button.active{color:var(--ink);background:#c8932c24}.language-switcher{border:1px solid var(--line);padding:4px 6px;border-radius:6px;background:#fffaf0b3}.language-short{display:none}.hero-band{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);gap:clamp(28px,5vw,72px);align-items:center;min-height:calc(100vh - 78px);padding:clamp(36px,7vw,86px) clamp(18px,6vw,80px) 42px}.hero-copy{max-width:760px}.eyebrow,.category{margin:0 0 10px;color:var(--clay);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}h1,h2,h3,p{margin-top:0}.hero-copy h1{max-width:780px;margin-bottom:22px;font-family:Georgia,"Noto Serif SC",serif;font-size:clamp(44px,8vw,92px);line-height:.96;letter-spacing:0;overflow-wrap:anywhere}.hero-title span{display:inline}.hero-title span+span:before{content:" · "}.hero-copy p:not(.eyebrow){max-width:620px;color:var(--muted);font-size:clamp(17px,2vw,21px);line-height:1.7}.hero-actions,.tag-row,.section-heading{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.button{display:inline-flex;min-height:46px;align-items:center;justify-content:center;gap:8px;border-radius:5px;border:1px solid transparent;padding:12px 16px;font-weight:800;transition:transform .16s ease,background .16s ease,border-color .16s ease}.button:hover{transform:translateY(-1px)}.button.primary{color:#fff8e6;background:var(--lacquer)}.button.secondary{color:var(--lacquer);border-color:var(--line);background:color-mix(in srgb,var(--saffron) 18%,var(--paper-strong))}.button.full{width:100%}.button:disabled{cursor:progress;opacity:.58}.sacred-panel{position:relative;display:grid;gap:18px;justify-self:center;width:min(100%,470px)}.yantra-frame{display:grid;aspect-ratio:3 / 4;place-items:center;border:1px solid var(--line);background:radial-gradient(circle at 50% 10%,rgba(200,147,44,.24),transparent 34%),linear-gradient(160deg,#fff8e9,#e8dcc7);box-shadow:var(--shadow)}.yantra-frame>span{position:absolute;inset:24px;border:1px solid rgba(63,42,24,.22)}.yantra-frame strong{position:absolute;top:34px;color:var(--leaf);font-size:13px}.yantra-frame svg{width:66%;fill:none;stroke:var(--lacquer);stroke-width:9;stroke-linecap:round;stroke-linejoin:round}.trust-strip{display:grid;grid-template-columns:1fr 1fr;gap:10px}.trust-strip span,.tag-row span,.admin-list span{border:1px solid var(--line);border-radius:999px;padding:8px 10px;color:var(--muted);background:#fffaf09e;font-size:13px;text-align:center}.section-grid,.content-section,.page-section{padding:clamp(34px,6vw,78px) clamp(18px,6vw,80px)}.section-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;background:var(--lacquer)}.info-block{min-height:260px;padding:24px;color:#fff8e6;border:1px solid rgba(255,248,230,.18);background:#fff8e60f}.info-icon{color:var(--saffron)}.info-block h2{margin:18px 0 12px;font-size:24px}.info-block p{color:#fff8e6c2;line-height:1.7}.section-heading{justify-content:space-between;margin-bottom:20px}.text-link{display:inline-flex;align-items:center;gap:4px;color:var(--leaf);font-weight:800}.design-strip,.design-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.design-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.design-card{display:grid;grid-template-columns:minmax(120px,.46fr) minmax(0,1fr);gap:16px;min-height:188px;padding:18px;border:1px solid var(--line);background:#fffaf0c7;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.design-card:hover{transform:translateY(-2px);border-color:#c8932c80;box-shadow:0 16px 42px #3f2a181f}.design-photo{position:relative;overflow:hidden;min-height:168px;background:#efe3cb}.design-photo img,.detail-hero-image img,.work-figure img,.reference-figure img,.payment-card img{display:block;width:100%}.design-photo img{height:100%;object-fit:cover}.design-symbol{display:grid;min-height:100%;place-items:center;background:#efe3cb}.design-symbol svg{width:76px;height:76px;fill:none;stroke:var(--lacquer);stroke-width:7;stroke-linecap:round;stroke-linejoin:round}.design-card h3{margin-bottom:10px;font-size:22px}.design-card p{color:var(--muted);line-height:1.55}.tag-row{margin-top:12px;gap:6px}.page-section{max-width:1280px;margin:0 auto}.page-section.compact{max-width:760px}.page-title{display:flex;gap:14px;align-items:center;margin-bottom:24px}.page-title h1{margin:0;font-family:Georgia,"Noto Serif SC",serif;font-size:clamp(34px,5vw,58px);letter-spacing:0}.two-column{display:grid;grid-template-columns:minmax(0,.85fr) minmax(320px,.75fr);gap:clamp(22px,5vw,58px);align-items:start}.form-panel,.success-panel,.profile-panel,.admin-panel,.error-panel,.preview-stage{border:1px solid var(--line);background:#fffaf0d6;box-shadow:0 18px 50px #3f2a1814}.form-panel{display:grid;gap:16px;padding:22px}.preview-flow,.booking-form{gap:18px}.flow-step,.form-section-title{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:start}.flow-step span,.form-section-title span{display:grid;width:34px;height:34px;place-items:center;color:#fff8e6;background:var(--lacquer);border-radius:999px;font-weight:900}.flow-step h2,.form-section-title h2{margin:0 0 4px;font-size:20px}.flow-step p{margin:0;color:var(--muted);line-height:1.55}.selected-design-panel,.privacy-note,.success-next,.booking-rules,.payment-empty{border:1px solid var(--line);background:color-mix(in srgb,var(--saffron) 10%,var(--paper-strong));padding:14px}.selected-design-panel{display:grid;gap:8px}.selected-design-panel strong{font-size:20px}.selected-design-panel p,.privacy-note p,.success-next p,.booking-rules p{margin:0;color:var(--muted);line-height:1.6}.choice-grid,.range-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.choice-button{display:grid;gap:5px;min-height:58px;border:1px solid var(--line);border-radius:5px;padding:10px 12px;color:var(--ink);background:#fffaf0;text-align:left}.choice-button span{font-weight:900}.choice-button small{color:var(--clay);font-size:12px;font-weight:800}.choice-button.active{border-color:var(--lacquer);color:#fff8e6;background:var(--lacquer)}.choice-button.active small{color:color-mix(in srgb,var(--saffron) 72%,#fff8e6)}.range-control{border:1px solid var(--line);background:#fffaf0;padding:12px}.range-control span{display:flex;justify-content:space-between;gap:12px;color:var(--muted)}.range-control strong{color:var(--ink)}.inline-error{border:1px solid rgba(180,95,66,.38);background:#b45f421f;color:var(--clay);padding:12px;font-weight:800;line-height:1.5}label{display:grid;gap:8px;color:var(--muted);font-size:13px;font-weight:800}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:4px;background:#fffaf0;color:var(--ink);padding:12px;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--saffron);box-shadow:0 0 0 3px #c8932c2e}textarea{min-height:110px;resize:vertical}.range-label{display:flex;justify-content:space-between}input[type=range]{accent-color:var(--lacquer)}.preview-stage{position:sticky;top:96px;display:grid;gap:14px;padding:18px}.preview-stage img{width:100%;max-height:min(72vh,720px);object-fit:contain;background:#efe3cb}.preview-stage p{color:var(--muted);line-height:1.6}.empty-preview,.success-panel,.error-panel{display:grid;min-height:320px;place-items:center;padding:32px;text-align:center}.empty-preview h2{margin:4px 0 0}.success-panel{gap:14px}.booking-success{justify-items:stretch}.booking-success>svg,.booking-success>.eyebrow,.booking-success>h1,.booking-success>p{justify-self:center;text-align:center}.success-actions{width:100%}.booking-layout{display:grid;grid-template-columns:minmax(0,760px) minmax(280px,390px);gap:clamp(22px,5vw,58px);align-items:start}.booking-main{min-width:0}.booking-context{position:sticky;top:96px;display:grid;gap:16px;border:1px solid var(--line);background:#fffaf0d6;box-shadow:0 18px 50px #3f2a1814;padding:22px}.booking-selected-design{display:grid;gap:12px}.booking-selected-design h3{margin:0;font-family:Georgia,"Noto Serif SC",serif;font-size:28px}.booking-selected-design p{color:var(--muted);line-height:1.68}.privacy-note{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;color:var(--leaf)}.profile-panel{padding:clamp(22px,5vw,38px)}.profile-panel dl{display:grid;gap:12px;margin:22px 0}.profile-panel dl div{display:grid;grid-template-columns:150px 1fr;gap:12px;border-bottom:1px solid var(--line);padding-bottom:12px}.profile-panel dt{color:var(--muted);font-weight:800}.profile-panel dd{margin:0}.admin-grid{display:grid;grid-template-columns:1.2fr .8fr .9fr;gap:16px;align-items:start}.admin-panel{display:grid;gap:14px;padding:18px}.lead-row{display:grid;grid-template-columns:1fr 136px 150px;gap:10px;border-top:1px solid var(--line);padding-top:14px}.lead-row div,.admin-list{display:grid;gap:6px}.lead-row span{color:var(--muted);font-size:13px}.lead-row textarea{grid-column:1 / -1}.mini-form{display:grid;gap:8px}.admin-list{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}.detail-page{max-width:1360px}.detail-hero{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(0,.8fr);gap:clamp(22px,5vw,58px);align-items:center}.detail-hero-image{overflow:hidden;border:1px solid var(--line);background:#efe3cb;box-shadow:var(--shadow)}.detail-hero-image img{aspect-ratio:4 / 5;object-fit:cover}.detail-summary h1{margin-bottom:18px;font-family:Georgia,"Noto Serif SC",serif;font-size:clamp(42px,7vw,78px);line-height:1}.detail-summary p{color:var(--muted);font-size:18px;line-height:1.75}.detail-actions,.success-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:18px;margin-top:28px;align-items:start}.detail-content,.detail-side,.faq-list{display:grid;gap:16px}.detail-side{position:sticky;top:96px}.content-panel,.placement-reference-panel,.faq-card{border:1px solid var(--line);background:#fffaf0d6;box-shadow:0 18px 50px #3f2a1814;padding:clamp(18px,3vw,26px)}.panel-title{display:flex;gap:10px;align-items:center;margin-bottom:12px;color:var(--leaf)}.panel-title h2{margin:0;font-size:21px}.content-panel p,.placement-reference-panel p,.faq-card p{color:var(--muted);line-height:1.72}.gallery-grid,.payment-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.work-figure,.reference-figure{margin:0;border:1px solid var(--line);background:#fffaf0}.work-figure img{aspect-ratio:4 / 5;object-fit:cover}.work-figure figcaption,.reference-figure figcaption{display:grid;gap:4px;padding:12px;color:var(--muted);font-size:13px;line-height:1.5}.work-figure figcaption strong{color:var(--ink)}.reference-figure img{aspect-ratio:4 / 3;object-fit:cover}.vertical-tags{align-items:flex-start}.detail-cta{position:sticky;bottom:18px;box-shadow:0 14px 34px #3f2a1833}.placement-reference-panel{margin-top:16px}.two-column>.placement-reference-panel{grid-column:1;margin-top:-42px}.body-reference{display:grid;grid-template-columns:150px 1fr;gap:16px;align-items:center}.body-reference svg{width:100%;fill:none;stroke:var(--lacquer);stroke-width:7;stroke-linecap:round;stroke-linejoin:round;background:color-mix(in srgb,var(--saffron) 10%,var(--paper-strong));border:1px solid var(--line)}.body-reference ul{display:grid;gap:8px;padding:0;margin:0;list-style:none}.body-reference li{border:1px solid var(--line);border-radius:999px;padding:8px 10px;color:var(--muted);background:#fffaf0b3;font-size:13px}.body-reference li.active,.filter-row button.active{color:#fff8e6;border-color:var(--lacquer);background:var(--lacquer)}.preview-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.preview-meta span,.preview-meta strong{border-radius:999px;padding:8px 10px;font-size:13px}.preview-meta span{color:var(--ink);background:color-mix(in srgb,var(--saffron) 18%,var(--paper-strong))}.preview-meta strong{color:#fff8e6;background:var(--leaf)}.summary-list{display:grid;width:100%;gap:10px;margin:10px 0 18px;text-align:left}.summary-list div{display:grid;grid-template-columns:132px 1fr;gap:10px;border-bottom:1px solid var(--line);padding-bottom:10px}.summary-list dt{color:var(--muted);font-weight:800}.summary-list dd{margin:0}.payment-section{width:100%;text-align:left}.payment-section h2{font-size:22px}.success-next{width:100%;text-align:left}.success-next strong,.booking-rules strong{display:block;margin-bottom:6px;color:var(--ink)}.payment-card{display:grid;gap:10px;border:1px solid var(--line);background:#fffaf0;padding:14px}.payment-card img{aspect-ratio:1;object-fit:contain;background:#fff}.payment-card p{color:var(--muted);font-size:13px;line-height:1.55}.payment-empty{color:var(--muted);line-height:1.6}.faq-page{max-width:980px}.faq-tools{display:grid;gap:14px;margin-bottom:18px}.search-field{position:relative;display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:#fffaf0d6;padding:0 14px}.search-field input{border:0;box-shadow:none;background:transparent}.filter-row{display:flex;flex-wrap:wrap;gap:8px}.filter-row button{border:1px solid var(--line);border-radius:999px;padding:9px 12px;color:var(--muted);background:#fffaf0d6}.faq-card span{display:inline-flex;width:fit-content;border-radius:999px;padding:6px 10px;color:var(--leaf);background:color-mix(in srgb,var(--leaf) 12%,var(--paper-strong));font-size:12px;font-weight:800}.faq-card h2{margin:12px 0 10px;font-size:24px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:940px){.topbar{grid-template-columns:1fr}.nav-links{justify-content:flex-start;overflow-x:auto}.language-switcher{width:100%;overflow-x:auto}.hero-band,.two-column,.booking-layout,.admin-grid,.detail-hero,.detail-layout{grid-template-columns:1fr}.hero-band{min-height:auto}.section-grid,.design-strip{grid-template-columns:1fr 1fr}.preview-stage{position:static}.two-column>.placement-reference-panel{margin-top:0}.detail-side,.booking-context{position:static}}@media(max-width:620px){.app-shell{padding-bottom:calc(82px + env(safe-area-inset-bottom))}.topbar{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand language";gap:10px;padding:10px 14px;background:color-mix(in srgb,var(--paper-strong) 96%,transparent)}.brand{grid-area:brand;width:auto;gap:9px}.brand-mark{width:40px;height:40px;flex:0 0 auto;font-size:15px}.brand strong{font-size:17px}.brand small{font-size:11px}.top-nav-links{display:none}.mobile-bottom-nav{position:fixed;right:14px;bottom:max(10px,env(safe-area-inset-bottom));left:14px;z-index:20;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;width:auto;max-width:none;padding:6px;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--paper-strong) 94%,transparent);box-shadow:0 18px 45px #2f261f33;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);overflow:visible}.mobile-bottom-nav a{display:flex;min-width:0;min-height:46px;align-items:center;justify-content:center;padding:7px 4px;border:1px solid transparent;border-radius:13px;font-size:13px;font-weight:800;line-height:1.1;text-align:center;white-space:nowrap}.mobile-bottom-nav a.active{color:#fff8e6;border-color:var(--lacquer);background:var(--lacquer)}.admin-nav-link,.mobile-bottom-nav .admin-nav-link{display:none}.language-switcher{grid-area:language;display:flex;align-items:center;gap:4px;width:auto;padding:0;border:0;border-radius:0;background:transparent;overflow:visible}.language-switcher svg{display:none}.language-switcher button{display:grid;min-width:34px;height:34px;place-items:center;border:1px solid var(--line);padding:0 7px;border-radius:999px;background:#fffaf0b8;font-size:12px;font-weight:800;line-height:1.1;white-space:nowrap}.language-full{display:none}.language-short{display:inline}.hero-band,.section-grid,.content-section,.page-section{padding-left:18px;padding-right:18px}.hero-band{display:block;max-width:100vw;padding-top:24px;padding-bottom:26px}.hero-copy,.hero-copy p:not(.eyebrow){max-width:100%}.hero-copy h1{margin-bottom:14px;max-width:9.5em;font-size:34px;line-height:1.08}.hero-title span{display:block}.hero-title span+span:before{content:""}.hero-copy p:not(.eyebrow){margin-bottom:20px;font-size:15px;line-height:1.62}.eyebrow,.category{margin-bottom:8px;font-size:11px;letter-spacing:.06em}.hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;width:100%}.hero-actions .button.primary{grid-column:1 / -1}.button{min-width:0;min-height:50px;padding:11px 10px;font-size:14px;line-height:1.15;text-align:center}.page-title{gap:12px;margin-bottom:18px}.page-title h1{font-size:34px;line-height:1.08}.sacred-panel{display:none}.trust-strip,.design-strip,.design-card,.detail-actions,.success-actions,.body-reference,.choice-grid,.range-grid,.summary-list div,.profile-panel dl div,.lead-row{grid-template-columns:1fr}.flow-step,.form-section-title,.privacy-note{grid-template-columns:30px 1fr;gap:10px}.flow-step span,.form-section-title span{width:30px;height:30px}.flow-step h2,.form-section-title h2{font-size:18px}.booking-context,.form-panel{padding:18px}.design-card{display:grid}.design-symbol{min-height:160px}.design-photo{min-height:220px}.section-grid{grid-template-columns:1fr;gap:0;padding-top:0;padding-bottom:0}.info-block{min-height:0;padding:22px 18px;border-right:0;border-left:0;border-bottom:0}.info-block:first-child{border-top:0}.info-block h2{margin:12px 0 8px;font-size:21px}.info-block p{margin-bottom:0;line-height:1.62}}
