:root{--ink:#4f236b;--forest:#5b2671;--gold:#b83083;--gold-lt:#e2afd4;--paper:#fcf9fc;--sand:#f3eaf4;--muted:#665b6d;--line:rgba(79,35,107,.16);--serif:"Noto Serif TC",serif;--sans:"Noto Sans TC",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.7}a{color:inherit;text-decoration:none}img{display:block;width:100%;object-fit:cover}.wrap{width:min(1152px,calc(100% - 48px));margin:auto}.eyebrow{font-size:.77rem;letter-spacing:.2em;color:var(--gold);font-weight:700}.title{font-family:var(--serif);font-size:clamp(2rem,4vw,3.5rem);font-weight:600;line-height:1.35;margin:.3rem 0 1rem;letter-spacing:.035em}.lead{color:var(--muted);max-width:43rem}.topline{background:var(--forest);color:#fff;padding:.55rem 0;font-size:.86rem}.topline .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem}.topline a{color:#d8f19b;font-weight:700}.nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.brand{display:flex;align-items:center;gap:.75rem;line-height:1.15}.brand-logo{width:55px;height:43px;object-fit:contain}.brand-name{font-family:var(--serif);font-weight:700;letter-spacing:.13em;font-size:1.12rem}.brand-sub{font-size:.65rem;letter-spacing:.14em;color:var(--muted)}.links{display:flex;align-items:center;gap:1.65rem;font-size:.95rem}.links a{position:relative}.links a:not(.nav-cta):after{content:"";position:absolute;left:0;bottom:-7px;width:0;height:2px;background:#76bc43;transition:.25s}.links a:hover:after,.links a.active:after{width:100%}.nav-cta,.button{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;background:var(--gold);color:#fff;padding:.76rem 1.1rem;font-weight:700;letter-spacing:.04em;border:1px solid var(--gold);transition:.25s;cursor:pointer}.nav-cta:hover,.button:hover{background:#722359;border-color:#722359}.button.ghost{background:transparent;color:var(--forest);border-color:var(--forest)}.button.ghost:hover{background:var(--forest);color:#fff}.hamb{display:none;border:0;background:none;font-size:1.45rem;color:var(--forest)}.hero{min-height:680px;position:relative;color:#fff;display:flex;align-items:end;background:linear-gradient(90deg,rgba(59,15,73,.89) 0%,rgba(76,20,83,.7) 48%,rgba(76,20,83,.12) 100%),url('/assets/hero-ceremony-1480.webp') center/cover}.hero .wrap{padding:6rem 0 7rem;position:relative}.hero .eyebrow{color:#bce36f}.hero h1{font-family:var(--serif);font-size:clamp(3rem,6.6vw,5.8rem);line-height:1.18;font-weight:600;letter-spacing:.08em;max-width:11ch;margin:.6rem 0 1.35rem}.hero p{max-width:34rem;color:#f9f0fa;font-size:1.08rem}.hero-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2rem}.hero .button.ghost{border-color:#fff;color:#fff}.hero .button.ghost:hover{background:#fff;color:var(--forest)}.hero-note{position:absolute;right:0;bottom:2.2rem;writing-mode:vertical-rl;letter-spacing:.18em;font-size:.72rem;color:rgba(255,255,255,.8)}section{padding:100px 0}.intro-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:7vw;align-items:center}.portrait{position:relative;padding:0 14% 12% 0}.portrait img{height:520px}.portrait:after{content:"";position:absolute;right:0;bottom:0;background:#c6e490;width:67%;height:62%;z-index:-1}.point-list{border-top:1px solid var(--line);margin-top:2rem}.point{display:grid;grid-template-columns:58px 1fr;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line)}.point b{font-family:var(--serif);font-size:1.15rem;color:var(--gold)}.soft{background:var(--sand)}.process-head{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:3rem}.process{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.process div{padding:1.35rem 1.1rem 1.7rem;border-right:1px solid var(--line);min-height:160px}.process div:first-child{padding-left:0}.process div:last-child{border-right:0}.process span{display:block;font-family:var(--serif);color:var(--gold);font-size:1.05rem}.process b{display:block;font-size:1.06rem;margin-top:.55rem}.process small{color:var(--muted);line-height:1.5;display:block;margin-top:.25rem}.plans{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:3rem}.plan{background:#fff;padding:2.25rem;border-top:4px solid var(--gold);box-shadow:0 18px 55px rgba(79,35,107,.1)}.plan h3{font-family:var(--serif);font-size:1.85rem;margin:.4rem 0}.plan-price{font-size:1.4rem;color:var(--gold);font-weight:700;margin-bottom:1.25rem}.plan ul{padding:0;list-style:none;color:var(--muted);min-height:125px}.plan li{padding:.35rem 0;border-bottom:1px solid #eee}.plan li:before{content:"—";color:var(--gold);margin-right:.5rem}.case-banner{display:grid;grid-template-columns:1fr 1fr;background:var(--forest);color:#fff}.case-banner img{height:440px}.case-copy{padding:4.5rem 10%;display:flex;flex-direction:column;justify-content:center}.case-copy .eyebrow{color:#bce36f}.case-copy p{color:#f2e9f4}.faq{max-width:820px}.faq details{border-top:1px solid var(--line);padding:1.25rem 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;list-style:none;font-weight:700;display:flex;justify-content:space-between;gap:1rem}.faq summary:after{content:"＋";color:var(--gold);font-size:1.25rem}.faq p{color:var(--muted);margin:.8rem 2rem .2rem 0}.contact{background:linear-gradient(115deg,rgba(78,24,92,.96),rgba(184,48,131,.9)),url('/assets/venue-1480.webp') center/cover;color:#fff}.contact .lead{color:#faedfa}.contact-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:4rem;align-items:end}.contact-card{background:#fff;color:var(--ink);padding:2rem}.contact-card h3{font-family:var(--serif);font-size:1.7rem;margin:0 0 1.15rem}.contact-row{padding:.85rem 0;border-top:1px solid var(--line)}.contact-row b{display:block;font-size:.78rem;letter-spacing:.1em;color:var(--gold)}.contact-row a{font-weight:700}.footer{background:#4b1f5e;color:#f1e7f3;padding:2.8rem 0;font-size:.88rem}.footer .wrap{display:flex;justify-content:space-between;gap:2rem}.footer small{color:#d7bedc}.page-hero{background:linear-gradient(90deg,rgba(62,18,77,.88),rgba(62,18,77,.26)),url('/assets/ceremony-2-1480.webp') center/cover;color:#fff;padding:120px 0 100px}.page-hero h1{font-family:var(--serif);font-size:clamp(2.8rem,5vw,4.8rem);margin:.3rem 0}.breadcrumbs{font-size:.84rem;color:#f0daf0}.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:3rem}.case-item{background:#fff;box-shadow:0 15px 40px rgba(79,35,107,.11)}.case-item img{height:270px}.case-item div{padding:1.25rem}.case-item h3{font-family:var(--serif);font-size:1.45rem;margin:0}.case-item p{color:var(--muted);font-size:.9rem;margin:.35rem 0 0}@media(max-width:800px){.wrap{width:min(100% - 36px,1152px)}.nav{height:70px}.links{display:none;position:absolute;z-index:5;background:var(--paper);top:70px;left:0;right:0;padding:1.1rem 1.4rem 1.6rem;flex-direction:column;align-items:stretch;box-shadow:0 12px 30px rgba(0,0,0,.1)}.links.open{display:flex}.links .nav-cta{text-align:center}.hamb{display:block}.hero{min-height:620px}.hero .wrap{padding:5rem 0 5rem}.hero-note{display:none}section{padding:70px 0}.intro-grid,.contact-grid,.case-banner{grid-template-columns:1fr;gap:2.6rem}.portrait img{height:390px}.process{grid-template-columns:repeat(2,1fr)}.process div:nth-child(2){border-right:0}.process div:nth-child(3){padding-left:0}.plans{grid-template-columns:1fr}.case-banner img{height:300px}.case-copy{padding:3rem 8%}.case-grid{grid-template-columns:1fr}.footer .wrap{display:block}.footer p{margin-top:1rem}.topline .wrap{font-size:.74rem}.page-hero{padding:80px 0}.contact-card{padding:1.5rem}}

/* ---- SEO v3 additions (same palette & type) ---- */
.skip{position:absolute;left:-9999px;top:0;background:var(--forest);color:#fff;padding:.6rem 1rem;z-index:10}.skip:focus{left:0}
.brand-logo{width:55px;height:43px}
.hero .button.ghost.light,.contact .button.ghost.light,.page-hero .button.ghost.light{border-color:#fff;color:#fff}
.contact .button.ghost.light:hover,.page-hero .button.ghost.light:hover{background:#fff;color:var(--forest)}
.contact .hero-actions,.page-hero .hero-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.6rem}
.contact-row a{word-break:break-word}
.text-link{color:var(--gold);font-weight:700;border-bottom:1px solid var(--gold-lt)}
.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}
.page-hero p{max-width:40rem}
.prose{max-width:820px}.prose h2{font-family:var(--serif);font-size:clamp(1.5rem,2.6vw,2rem);font-weight:600;margin:2.6rem 0 .8rem;letter-spacing:.03em}
.prose h3{font-family:var(--serif);font-size:1.3rem;font-weight:600;margin:2rem 0 .5rem}
.prose p,.prose li{color:var(--muted)}.prose li{margin:.35rem 0}.prose strong{color:var(--ink)}
.prose a:not(.button){color:var(--gold);font-weight:700;border-bottom:1px solid var(--gold-lt)}
.prose .title{margin-top:.3rem}
.toc{background:var(--sand);padding:1.4rem 1.6rem;display:flex;flex-direction:column;gap:.35rem;margin-bottom:1rem}.toc b{font-family:var(--serif)}.toc a{color:var(--forest)!important;border:0!important;font-weight:500!important}
.callout{background:#fff;border-left:4px solid var(--gold);box-shadow:0 15px 40px rgba(79,35,107,.08);padding:1.4rem 1.6rem;margin:2.6rem 0 1.2rem}.callout b{font-family:var(--serif);font-size:1.15rem}
.note{font-size:.85rem}
.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:2rem}
.guide-card{background:#fff;padding:1.6rem;border-top:4px solid var(--gold);box-shadow:0 15px 40px rgba(79,35,107,.1);display:flex;flex-direction:column;gap:.5rem;transition:.25s}
.guide-card:hover{transform:translateY(-3px)}.guide-card b{font-family:var(--serif);font-size:1.25rem}.guide-card span{color:var(--muted);font-size:.92rem}
.area-card{box-shadow:0 18px 55px rgba(79,35,107,.1)}
.footer-grid{display:grid!important;grid-template-columns:1.4fr 1fr 1fr 1fr 1.2fr;gap:2rem}
.footer a{color:#fff}.footer-nav{display:flex;flex-direction:column;gap:.4rem}.footer-nav b{color:#e2afd4;font-size:.8rem;letter-spacing:.12em}
.footer-nap{color:#d7bedc;font-size:.82rem;margin-top:1rem}.footer-credit{margin:0}
@media(max-width:800px){.hero{background-image:linear-gradient(90deg,rgba(59,15,73,.89) 0%,rgba(76,20,83,.7) 48%,rgba(76,20,83,.12) 100%),url('/assets/hero-ceremony-800.webp')}
.page-hero{background-image:linear-gradient(90deg,rgba(62,18,77,.88),rgba(62,18,77,.26)),url('/assets/ceremony-2-800.webp')}
.contact{background-image:linear-gradient(115deg,rgba(78,24,92,.96),rgba(184,48,131,.9)),url('/assets/venue-800.webp')}
.process-head{display:block}.guide-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child,.footer-credit{grid-column:1/-1}}
