@font-face{font-family:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/playfair-600.woff2) format("woff2")}@font-face{font-family:Playfair Display;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/playfair-700.woff2) format("woff2")}@font-face{font-family:Playfair Display;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/playfair-800.woff2) format("woff2")}@font-face{font-family:Playfair Display;font-style:italic;font-weight:700;font-display:swap;src:url(/fonts/playfair-700i.woff2) format("woff2")}:root{--ink:#241d15;--ink-soft:#5c5040;--paper:#f7f0e1;--paper-2:#fbf6ea;--paper-edge:#e7dcc4;--forest:#1c3527;--forest-2:#24402f;--forest-deep:#14251b;--copper:#a15c2e;--copper-lt:#c17a45;--gold:#c39a4c;--gold-lt:#e3c67f;--line:#e2d6bd;--danger:#8a3b2e;--display:"Playfair Display",Georgia,"Times New Roman",serif;--sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--shadow-sm:0 2px 10px rgba(36,29,21,.08);--shadow:0 14px 40px rgba(28,22,16,.14);--shadow-lg:0 30px 80px rgba(20,37,27,.3);--maxw:1120px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--sans);font-size:17px;line-height:1.62;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;overflow-x:hidden}.display,h1,h2,h3{font-family:var(--display);font-weight:700;letter-spacing:.005em;color:var(--forest);margin:0}a{color:var(--copper);text-decoration:none}img{max-width:100%;display:block}.wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 22px;z-index:1}.section,.wrap{position:relative}.section{padding:clamp(56px,9vw,118px) 0}.eyebrow{text-transform:uppercase;letter-spacing:.34em;font-size:12px;font-weight:700;color:var(--copper);display:inline-block}.eyebrow.on-dark{color:var(--gold-lt)}.btn{display:inline-flex;align-items:center;gap:9px;padding:14px 26px;border-radius:999px;font-weight:700;font-size:15.5px;font-family:var(--sans);cursor:pointer;border:1.5px solid transparent;transition:transform .08s ease,box-shadow .25s ease,background .2s ease;letter-spacing:.01em}.btn:active{transform:translateY(1px)}.btn-gold{background:linear-gradient(180deg,var(--gold-lt),var(--gold));color:#3a2c10;box-shadow:0 10px 26px rgba(195,154,76,.35)}.btn-gold:hover{box-shadow:0 14px 34px rgba(195,154,76,.5)}.btn-outline{background:transparent;color:var(--paper);border-color:hsla(43,64%,69%,.55)}.btn-outline:hover{background:hsla(43,64%,69%,.12)}.btn-forest{background:var(--forest);color:#f4ecd9;box-shadow:var(--shadow-sm)}.btn-forest:hover{background:var(--forest-2)}.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#f3ead7;overflow:hidden;padding:90px 22px 64px;background:radial-gradient(120% 90% at 50% 8%,rgba(197,122,69,.22),transparent 46%),radial-gradient(90% 70% at 50% 40%,hsla(43,64%,69%,.14),transparent 60%),linear-gradient(180deg,#14251b,#1c3527 55%,#14251b)}.hero-photo{position:absolute;inset:0;background-size:cover;background-position:50%;opacity:0;z-index:0}.hero.has-photo .hero-photo{opacity:1}.hero.has-photo .hero-art{display:none}.hero.has-photo:after{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(120% 80% at 50% 46%,transparent 30%,rgba(15,26,19,.5) 100%),linear-gradient(180deg,rgba(15,26,19,.74),rgba(15,26,19,.44) 38%,rgba(15,26,19,.56) 62%,rgba(15,26,19,.94))}.hero-art{position:absolute;z-index:1;color:var(--gold-lt);opacity:.16;pointer-events:none}.hero-art.still{width:min(360px,42vw);right:4%;bottom:-2%;opacity:.13}.hero-art.sprig-l{width:130px;left:3%;top:12%;color:var(--gold);opacity:.2}.hero-art.sprig-r{width:120px;right:4%;top:16%;opacity:.18}.hero-inner{position:relative;z-index:2;max-width:860px}.hero .eyebrow{color:var(--gold-lt);margin-bottom:22px}.hero h1{color:#f6eed8;font-weight:800;font-size:clamp(42px,9vw,92px);line-height:1.02;letter-spacing:-.01em;text-shadow:0 2px 30px rgba(0,0,0,.35)}.hero h1 em{font-style:italic;color:var(--gold-lt)}.hero .lede{margin:26px auto 0;max-width:52ch;font-size:clamp(16px,2.2vw,20px);color:#e6dcc6;line-height:1.6}.hero-cta{margin-top:38px;display:flex;gap:14px;flex-wrap:wrap;justify-content:center}.hero-scroll{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);z-index:2;color:var(--gold-lt);opacity:.8;font-size:12px;letter-spacing:.2em;text-transform:uppercase;display:flex;flex-direction:column;align-items:center;gap:8px}.hero-scroll span{width:1px;height:34px;background:linear-gradient(var(--gold-lt),transparent);animation:pulse 2.2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.35}50%{opacity:1}}.craft{background:var(--paper)}.craft .wrap{max-width:900px;text-align:center}.craft .divider{color:var(--gold);width:240px;margin:0 auto 24px;display:block}.craft h2{font-size:clamp(28px,5vw,44px);line-height:1.12}.craft .kicker{margin:22px auto 0;max-width:62ch;font-size:18.5px;color:var(--ink-soft)}.craft .manifest{margin-top:30px;font-family:var(--display);font-style:italic;font-size:clamp(20px,3.4vw,30px);color:var(--forest);line-height:1.4}.talk{background:linear-gradient(180deg,#f0e7d4,#f6efe1);border-top:1px solid var(--paper-edge);border-bottom:1px solid var(--paper-edge)}.talk .head{text-align:center;max-width:640px;margin:0 auto 34px}.talk .head h2{font-size:clamp(26px,4.6vw,40px)}.talk .head p{color:var(--ink-soft);margin-top:12px;font-size:17.5px}.talk-frame{position:relative;max-width:760px;margin:0 auto}.talk-frame .corner{position:absolute;width:34px;color:var(--gold);opacity:.8;z-index:3}.talk-frame .corner.tl{top:-12px;left:-12px}.talk-frame .corner.tr{top:-12px;right:-12px;transform:scaleX(-1)}.talk-frame .corner.bl{bottom:-12px;left:-12px;transform:scaleY(-1)}.talk-frame .corner.br{bottom:-12px;right:-12px;transform:scale(-1)}.features{color:#ead9b8;background-color:var(--forest-deep);background-image:linear-gradient(rgba(17,30,21,.9),rgba(17,30,21,.94)),url(/img/texture.jpg);background-size:cover;background-position:50%}.features .head{text-align:center;margin-bottom:46px}.features .head .eyebrow{color:var(--gold-lt)}.features .head h2{color:#f4e9cf;font-size:clamp(26px,4.6vw,42px);margin-top:14px}.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:18px;gap:18px}.feature{background:linear-gradient(180deg,hsla(0,0%,100%,.05),hsla(0,0%,100%,.02));border:1px solid hsla(43,64%,69%,.18);border-radius:18px;padding:26px 24px;transition:transform .2s ease,border-color .2s ease,background .2s ease}.feature:hover{transform:translateY(-4px);border-color:hsla(43,64%,69%,.5);background:hsla(0,0%,100%,.05)}.feature .ic{width:42px;height:42px;color:var(--gold-lt);margin-bottom:14px}.feature h3{color:#f2e6cb;font-family:var(--display);font-size:22px;margin-bottom:6px}.feature p{color:#cdbf9f;font-size:15.5px;line-height:1.55;margin:0}.howto{background:var(--paper)}.howto .head{text-align:center;margin-bottom:32px}.howto .head h2{font-size:clamp(26px,4.6vw,42px);margin-top:14px}.howto-facts{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-bottom:40px}.howto-fact{text-align:center;padding:16px 28px;border:1px solid var(--line);border-radius:14px;background:var(--paper-2);min-width:150px}.howto-fact b{display:block;font-family:var(--display);font-size:25px;color:var(--forest);line-height:1.1}.howto-fact span{font-size:12px;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.09em}.howto-parts{display:grid;grid-template-columns:1fr 1fr;grid-gap:22px;gap:22px;max-width:980px;margin:0 auto}.howto-part{background:var(--paper-2);border:1px solid var(--line);border-radius:18px;padding:28px 26px}.howto-part .num{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--forest);color:var(--gold-lt);font-family:var(--display);font-size:21px;margin-bottom:14px}.howto-part h3{font-family:var(--display);color:var(--forest);font-size:23px;margin:0 0 8px}.howto-part p{color:var(--ink-soft);font-size:16px;line-height:1.6;margin:0}.howto-note{max-width:840px;margin:28px auto 0;text-align:center;padding:16px 24px;border:1px dashed var(--gold-lt);border-radius:14px;background:#fbf5e6;color:var(--ink-soft);font-size:15.5px;line-height:1.55}@media (max-width:720px){.howto-parts{grid-template-columns:1fr}}.gift{color:#f5ecd6;background:radial-gradient(80% 120% at 12% 20%,rgba(197,122,69,.25),transparent 55%),linear-gradient(150deg,var(--forest-2) 0,var(--forest-deep) 100%)}.gift-inner{display:flex;align-items:center;gap:34px;max-width:900px;margin:0 auto}.gift-icon{font-size:84px;line-height:1;flex:0 0 auto;filter:drop-shadow(0 8px 20px rgba(0,0,0,.4))}.gift h2{color:#f6ecd4;font-size:clamp(24px,4.2vw,38px);margin:12px 0 10px}.gift p{color:#ddceac;margin:0 0 22px;font-size:17px}.gift-cta{display:flex;gap:12px;flex-wrap:wrap}@media (max-width:620px){.gift-cta{justify-content:center}.gift-inner{flex-direction:column;text-align:center;gap:16px}.gift-icon{font-size:64px}}.gallery{background:var(--paper)}.gallery .head{text-align:center;max-width:640px;margin:0 auto 40px}.gallery .head h2{font-size:clamp(26px,4.6vw,42px);margin-top:14px}.gallery .head p{color:var(--ink-soft);margin-top:12px;font-size:17.5px}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(228px,1fr));grid-gap:18px;gap:18px}.gtile{position:relative;margin:0;border-radius:18px;overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--paper-edge);background:#0e1a13}.gtile img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;transition:transform .5s ease}.gtile:hover img{transform:scale(1.055)}.gtile figcaption{position:absolute;inset:auto 0 0 0;padding:18px 18px 16px;color:#f4ead4;background:linear-gradient(transparent,rgba(12,22,15,.4) 30%,rgba(12,22,15,.9))}.gtile figcaption b{font-family:var(--display);font-size:21px;display:block;margin-bottom:3px}.gtile figcaption span{font-size:14px;color:#d8ccae;line-height:1.45}@media (max-width:760px){.gallery-grid{grid-template-columns:1fr}}.mk{position:relative;overflow:hidden;color:#f5ecd6;background:radial-gradient(90% 120% at 82% 20%,rgba(197,122,69,.28),transparent 55%),linear-gradient(160deg,var(--forest) 0,var(--forest-deep) 100%)}.mk .wrap{max-width:980px}.mk-grid{display:grid;grid-template-columns:1.3fr 1fr;grid-gap:40px;gap:40px;align-items:center}.mk h2{color:#f6ecd4;font-size:clamp(30px,5.4vw,52px);line-height:1.05}.mk p{color:#ddceac;margin:20px 0 30px;font-size:18px;max-width:46ch}.mk .price{font-family:var(--display);font-style:italic;color:var(--gold-lt);font-size:20px;margin-bottom:22px}.mk-photo img{width:100%;border-radius:20px;display:block;border:1px solid hsla(43,64%,69%,.35);box-shadow:var(--shadow-lg)}.mk-dates{margin:4px 0 24px}.mk-dates-label{font-size:13px;text-transform:uppercase;letter-spacing:.1em;color:var(--gold-lt);opacity:.85;margin-bottom:12px}.mk-dates-row{display:flex;flex-wrap:wrap;gap:10px}.mk-date{display:inline-flex;flex-direction:column;align-items:center;min-width:74px;padding:9px 12px;border-radius:13px;text-decoration:none;background:hsla(43,64%,69%,.08);border:1px solid hsla(43,64%,69%,.4);color:#f4ead4;transition:background .15s ease,transform .08s ease,border-color .15s ease}.mk-date:hover{background:hsla(43,64%,69%,.18);border-color:var(--gold-lt)}.mk-date:active{transform:translateY(1px)}.mk-date b{font-family:var(--display);font-size:17px;line-height:1.1;color:#f6ecd4;white-space:nowrap}.mk-date span{font-size:12px;color:var(--gold-lt);text-transform:lowercase;margin-top:2px}@media (max-width:760px){.mk-dates-row{justify-content:center}}.contacts{background:var(--paper)}.contacts .head{text-align:center;margin-bottom:34px}.contacts .head h2{font-size:clamp(26px,4.6vw,42px);margin-top:14px}.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));grid-gap:16px;gap:16px;max-width:1000px;margin:0 auto}.contact-card{display:flex;flex-direction:column;gap:4px;text-decoration:none;background:var(--paper-2);border:1px solid var(--line);border-radius:16px;padding:20px;color:var(--ink);transition:transform .15s ease,border-color .15s ease}a.contact-card:hover{transform:translateY(-3px);border-color:var(--gold-lt)}.contact-card .ic{width:30px;height:30px;margin-bottom:6px;display:block}.contact-card b{font-family:var(--display);font-size:19px;color:var(--forest)}.contact-card>span:last-child{font-size:14.5px;color:var(--ink-soft);line-height:1.45}.faq{background:var(--paper-2)}.faq .head{text-align:center;margin-bottom:34px}.faq .head h2{font-size:clamp(26px,4.6vw,42px);margin-top:14px}.faq-list{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:12px}.faq-item{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:4px 20px;transition:border-color .2s ease}.faq-item[open]{border-color:var(--gold-lt)}.faq-item summary{cursor:pointer;list-style:none;padding:16px 28px 16px 0;position:relative;font-family:var(--display);font-size:19px;color:var(--forest);font-weight:600}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";position:absolute;right:2px;top:50%;transform:translateY(-50%);font-family:var(--sans);font-size:24px;color:var(--copper);line-height:1}.faq-item[open] summary:after{content:"–"}.faq-item p{margin:0 0 18px;color:var(--ink-soft);font-size:16px;line-height:1.6}.fineprint{background:var(--paper);padding:40px 0 12px}.fineprint .wrap{max-width:760px}.disclaimer{border:1px dashed var(--paper-edge);border-radius:14px;padding:16px 20px;background:var(--paper-2)}.disclaimer,footer.site{color:var(--ink-soft);font-size:13.5px;text-align:center}footer.site{background:var(--paper);padding:30px 22px 54px}footer.site .brand{font-family:var(--display);font-size:17px;color:var(--forest)}footer.site a{color:var(--copper)}.chat{background:var(--paper-2);border:1px solid var(--paper-edge);border-radius:20px;box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column;height:clamp(560px,82vh,880px)}.chat-head{display:flex;align-items:center;gap:12px;padding:14px 18px;background:linear-gradient(180deg,var(--forest),var(--forest-2));color:#f2e8d2;border-bottom:1px solid rgba(0,0,0,.15)}.chat-head .sigil{width:42px;height:42px;border-radius:50%;object-fit:cover;object-position:center 25%;border:1.5px solid var(--gold-lt);box-shadow:0 2px 8px rgba(0,0,0,.35);flex:0 0 auto}.chat-head b{color:#f6ecd6;font-family:var(--display);font-size:18px;font-weight:700}.chat-head .sub{color:#cbbd9c;font-size:13px;display:block}.chat-head .dot{width:8px;height:8px;border-radius:50%;background:#7fce7f;box-shadow:0 0 0 3px rgba(127,206,127,.25);margin-left:auto}.chat-log{flex:1 1;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:13px;scroll-behavior:smooth}.msg{max-width:88%;padding:12px 15px;border-radius:15px;word-wrap:break-word;overflow-wrap:anywhere;font-size:16px}.msg.user{align-self:flex-end;background:var(--forest);color:#f4ecd9;border-bottom-right-radius:5px;white-space:pre-wrap}.msg.assistant{align-self:flex-start;background:#fff;border:1px solid var(--line);border-bottom-left-radius:5px}.msg a{color:var(--copper)}.msg.user a{color:var(--gold-lt)}.msg.assistant p{margin:0 0 8px;white-space:pre-wrap}.msg.assistant p:last-child{margin-bottom:0}.msg.assistant .md-h{font-weight:700;color:var(--forest);font-family:var(--display);font-size:1.05em;margin:8px 0 3px}.msg.assistant ul{margin:4px 0 8px;padding-left:20px}.msg.assistant li{margin:2px 0}.msg.assistant blockquote{margin:8px 0;padding:8px 14px;border-left:3px solid var(--gold-lt);background:#fbf5e6;border-radius:0 10px 10px 0;color:var(--ink-soft);font-style:italic;white-space:pre-wrap}.msg.assistant code{background:#f0e7d4;border-radius:4px;padding:1px 5px;font-size:.9em;font-family:ui-monospace,Menlo,Consolas,monospace}.msg.assistant strong{font-weight:700;color:var(--forest-2)}.tool-note{align-self:flex-start;font-size:13.5px;color:var(--copper);font-style:italic;display:flex;align-items:center;gap:9px}.tool-note .spin{width:13px;height:13px;border-radius:50%;border:2px solid var(--gold-lt);border-top-color:var(--copper);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.suggests{display:flex;flex-wrap:wrap;gap:8px;padding:0 18px 14px}.chip{font-size:13.5px;padding:8px 14px;border-radius:999px;border:1px solid var(--gold-lt);background:#fbf5e6;color:var(--copper);cursor:pointer;transition:background .15s ease}.chip:hover{background:#f6ecd2}.chat-input{display:flex;gap:8px;padding:12px;border-top:1px solid var(--line);background:var(--paper)}.chat-input textarea{flex:1 1;resize:none;border:1.5px solid var(--line);border-radius:13px;padding:11px 13px;font:inherit;font-size:16px;background:#fff;color:var(--ink);max-height:120px}.chat-input textarea:focus{outline:none;border-color:var(--gold)}.chat-input textarea::placeholder{font-size:13px;opacity:.7;white-space:nowrap}.send{border:none;background:var(--forest);color:#f4ecd9;border-radius:13px;width:48px;font-size:18px;cursor:pointer;flex:0 0 auto;transition:background .15s ease}.send:hover{background:var(--forest-2)}.send:disabled{opacity:.4;cursor:default}.geo{border:1.5px solid var(--line);background:#fff;border-radius:13px;width:48px;font-size:18px;cursor:pointer;flex:0 0 auto}.geo.on{border-color:var(--gold);background:#fbf5e6}@media (max-width:760px){body{font-size:16px}.feature-grid,.mk-grid{grid-template-columns:1fr}.mk-grid{gap:26px;text-align:center}.mk p{margin-left:auto;margin-right:auto}.mk-still{max-width:200px}.hero-art.still{width:54vw;opacity:.1}.hero-art.sprig-l,.hero-art.sprig-r{display:none}.chat{height:min(80vh,680px)}}