*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--font-heading: "Noto Serif JP", serif;--font-body: "DM Sans", sans-serif;--font-logo: "Playfair Display", Georgia, "Times New Roman", serif;--font-size-base: 16px;--line-height-base: 1.75;--line-height-tight: 1.15;--line-height-snug: 1.4;--color-bg: #0a0a0a;--color-surface: #141414;--color-surface-hover: #1a1a1a;--color-accent: #c5a47e;--color-accent-hover: #d4b896;--color-accent-light: rgba(197, 164, 126, .1);--color-accent-soft: rgba(197, 164, 126, .06);--color-text: #e8e0d8;--color-text-muted: #8a8078;--color-text-inverse: #0a0a0a;--color-heading: #f5f0eb;--color-border: #2a2420;--color-border-light: #1e1a16;--color-card-bg: #141414;--color-section-alt: #111111;--color-success: #4ade80;--color-error: #f87171;--color-rating: #f59e0b;--color-primary-dark: #f5f0eb;--color-primary: #c5a47e;--color-warm-white: #0a0a0a;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-6xl: 3.75rem;--space-1: .5rem;--space-2: 1rem;--space-3: 1.5rem;--space-4: 2rem;--space-5: 2.5rem;--space-6: 3rem;--space-8: 4rem;--space-10: 5rem;--space-12: 6rem;--space-16: 8rem;--container-max: 1200px;--container-narrow: 800px;--container-wide: 1400px;--bottom-nav-height: 64px;--bottom-nav-offset: 72px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .5);--shadow-xl: 0 20px 40px rgba(0, 0, 0, .55);--shadow-card-hover: 0 12px 28px rgba(0, 0, 0, .6);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .4s ease;--z-dropdown: 100;--z-sticky: 500;--z-header: 1000;--z-overlay: 2000;--z-modal: 3000;--z-skip: 9999}[data-theme=light]{--color-bg: #faf8f5;--color-surface: #ffffff;--color-surface-hover: #f5f0eb;--color-accent: #8b6914;--color-accent-hover: #a07a1a;--color-accent-light: rgba(139, 105, 20, .08);--color-accent-soft: rgba(139, 105, 20, .04);--color-text: #3d3529;--color-text-muted: #8a8078;--color-text-inverse: #ffffff;--color-heading: #1a1510;--color-border: #e8e0d8;--color-border-light: #f0ebe5;--color-card-bg: #ffffff;--color-section-alt: #f5f0eb;--color-success: #059669;--color-error: #dc2626;--color-rating: #d97706;--color-primary-dark: #1a1510;--color-primary: #8b6914;--color-warm-white: #faf8f5;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 40px rgba(0, 0, 0, .1);--shadow-card-hover: 0 12px 28px rgba(0, 0, 0, .12)}html{font-size:var(--font-size-base);scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);font-size:var(--text-base);line-height:var(--line-height-base);color:var(--color-text);background-color:var(--color-bg);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}iframe{max-width:100%;border:none}input,button,textarea,select{font:inherit;color:inherit}a{color:inherit;text-decoration:none}ul,ol{list-style:none}table{border-collapse:collapse;border-spacing:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-heading);line-height:var(--line-height-tight);font-weight:800;letter-spacing:-.02em}h1{font-size:var(--text-4xl);letter-spacing:-.03em}h2{font-size:var(--text-3xl);letter-spacing:-.025em}h3{font-size:var(--text-2xl);font-weight:700}h4{font-size:var(--text-xl);font-weight:700}h5{font-size:var(--text-lg);font-weight:600}h6{font-size:var(--text-base);font-weight:600}p{margin-bottom:var(--space-3);color:var(--color-text)}p:last-child{margin-bottom:0}a:hover{color:var(--color-accent)}strong,b{font-weight:700}em,i{font-style:italic}small{font-size:var(--text-sm)}.section-title{font-family:var(--font-heading);font-size:var(--text-3xl);font-weight:800;color:var(--color-heading);text-align:center;margin-bottom:var(--space-2);letter-spacing:-.025em}.section-subtitle{font-family:var(--font-body);font-size:var(--text-lg);color:var(--color-text-muted);text-align:center;max-width:600px;margin:0 auto var(--space-8);line-height:var(--line-height-base)}.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 var(--space-3)}.container-narrow{max-width:var(--container-narrow)}.container-wide{max-width:var(--container-wide)}.grid{display:grid;gap:var(--space-4)}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}section{padding:var(--space-10) 0}.site-header{position:sticky;top:0;z-index:var(--z-header);background:#0a0a0af2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);transition:box-shadow var(--transition-base),background var(--transition-base)}@supports (backdrop-filter: blur(12px)){.site-header{background:#0a0a0acc}}[data-theme=light] .site-header{background:#faf8f5d9}.site-header.scrolled{box-shadow:0 4px 24px #0006;background:#0a0a0aeb}[data-theme=light] .site-header.scrolled{box-shadow:var(--shadow-md);background:#faf8f5f2}.site-header .container{display:flex;align-items:center;justify-content:space-between;height:72px}header{background:var(--color-bg);border-bottom:1px solid var(--color-border);padding:var(--space-3) 0;text-align:left}header .container{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-2)}header h1{font-family:var(--font-logo);font-size:var(--text-2xl);font-weight:700;letter-spacing:-.02em;margin:0;line-height:1}header h1 a{color:var(--color-heading);text-decoration:none;transition:color var(--transition-fast)}header h1 a:hover{color:var(--color-accent)}header p{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-muted);letter-spacing:.1em;text-transform:uppercase;margin:0;display:none}.logo{font-family:var(--font-logo);font-size:var(--text-2xl);font-weight:700;color:var(--color-heading);text-decoration:none;display:flex;align-items:center;gap:var(--space-1);letter-spacing:-.02em;flex-shrink:0}.logo span{color:var(--color-accent)}.logo:hover{color:var(--color-heading)}.logo:hover span{color:var(--color-accent-hover)}.main-nav{display:flex;align-items:center;gap:var(--space-1)}.nav-links{display:none;list-style:none;gap:var(--space-1);align-items:center}nav{background:var(--color-surface);padding:0;border-bottom:1px solid var(--color-border)}nav .container{padding:0 var(--space-3)}nav ul{list-style:none;display:flex;justify-content:flex-start;gap:0;flex-wrap:wrap;padding:0}nav a{display:block;padding:var(--space-2) var(--space-3);color:var(--color-text);text-decoration:none;font-family:var(--font-body);font-size:var(--text-sm);font-weight:500;letter-spacing:.02em;transition:color var(--transition-fast),background var(--transition-fast);white-space:nowrap}nav li:last-child a{border-right:none}nav a:hover{color:var(--color-accent);background:var(--color-accent-light)}.nav-link{padding:var(--space-1) var(--space-2);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-sm);font-weight:500;text-decoration:none;transition:color var(--transition-fast);letter-spacing:.01em;white-space:nowrap;position:relative}.nav-link:after{content:"";position:absolute;bottom:-2px;left:50%;width:0;height:2px;background:var(--color-accent);transition:width var(--transition-base),left var(--transition-base)}.nav-link:hover:after,.nav-link.active:after{width:100%;left:0}.nav-link:hover,.nav-link.active{color:var(--color-accent)}nav a.active{color:var(--color-accent);font-weight:600;background:var(--color-accent-light)}.nav-links a.active{color:var(--color-accent);font-weight:600}.btn-nav{display:inline-flex;align-items:center;gap:var(--space-1);padding:10px 20px;background:var(--color-accent);color:var(--color-text-inverse);font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;border:none;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast);text-decoration:none;white-space:nowrap}.btn-nav:hover{background:var(--color-accent-hover);color:var(--color-text-inverse);transform:translateY(-1px);box-shadow:0 4px 16px #c5a47e4d}.btn-nav:active{transform:translateY(0);box-shadow:none}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text-muted);transition:color var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast);flex-shrink:0}.theme-toggle:hover{color:var(--color-accent);border-color:var(--color-accent);background:var(--color-accent-light)}.theme-toggle:active{transform:scale(.95)}.theme-toggle svg{width:18px;height:18px}.nav-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;width:44px;height:44px;background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;gap:5px;padding:8px;transition:border-color var(--transition-fast),background var(--transition-fast)}.nav-toggle:hover{border-color:var(--color-accent);background:var(--color-accent-light)}.nav-toggle:active{transform:scale(.95)}.nav-toggle span{display:block;width:20px;height:2px;background:var(--color-heading);border-radius:1px;transition:transform var(--transition-base),opacity var(--transition-base)}.nav-toggle.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.nav-toggle.active span:nth-child(2){opacity:0}.nav-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.main-nav.open .nav-links{display:flex;flex-direction:column;position:fixed;inset:0 0 0 auto;width:300px;max-width:80vw;background:var(--color-surface);padding:80px var(--space-3) var(--space-3);box-shadow:-4px 0 32px #00000080;z-index:calc(var(--z-header) + 1);animation:slideInRight .3s cubic-bezier(.16,1,.3,1);overflow-y:auto;-webkit-overflow-scrolling:touch;border-left:1px solid var(--color-border)}[data-theme=light] .main-nav.open .nav-links{box-shadow:-4px 0 24px #0000001f}.main-nav.open:before{content:"";position:fixed;inset:0;background:#0009;z-index:var(--z-header);animation:fadeIn .2s ease}[data-theme=light] .main-nav.open:before{background:#0f172a66}.main-nav.open .nav-link{padding:var(--space-2) var(--space-3);font-size:var(--text-base);border-bottom:1px solid var(--color-border);width:100%;min-height:44px;display:flex;align-items:center}.main-nav.open .nav-link:after{display:none}.main-nav.open .btn-nav{margin-top:var(--space-2);width:100%;justify-content:center}.hero{position:relative;background:var(--color-surface);padding:var(--space-12) 0;text-align:center;overflow:hidden;border-bottom:1px solid var(--color-border);margin-bottom:0}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 20% 80%,rgba(197,164,126,.06) 0%,transparent 50%),radial-gradient(ellipse at 80% 20%,rgba(197,164,126,.04) 0%,transparent 50%);pointer-events:none}.hero:after{content:none}.hero .container{position:relative;z-index:1}.hero h1{font-family:var(--font-heading);font-size:var(--text-4xl);font-weight:800;color:var(--color-heading);margin-bottom:var(--space-3);letter-spacing:-.03em;line-height:var(--line-height-tight)}.hero h1 span{color:var(--color-accent)}.hero .lead{font-family:var(--font-body);font-size:var(--text-lg);color:var(--color-text);max-width:640px;margin:0 auto var(--space-5);line-height:var(--line-height-base);column-count:1}.hero-buttons{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:center;margin-top:var(--space-5)}.trust-bar{background:var(--color-bg);border-bottom:1px solid var(--color-border);padding:var(--space-6) 0}.trust-stats{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-4) var(--space-6)}.stat-item{text-align:center;flex:0 0 auto}.stat-number{display:block;font-family:var(--font-heading);font-size:var(--text-3xl);font-weight:800;color:var(--color-heading);line-height:1;margin-bottom:var(--space-1)}.stat-label{font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:500}.featured-section{padding:var(--space-12) 0;background:var(--color-section-alt)}.listing-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4)}.listing-card{background:var(--color-card-bg);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid var(--color-border);transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1),border-color var(--transition-base)}.listing-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-card-hover);border-color:#c5a47e33}.listing-card-image{position:relative;width:100%;height:220px;overflow:hidden;background:var(--color-surface);aspect-ratio:16 / 9}.listing-card-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.listing-card:hover .listing-card-image img{transform:scale(1.05)}.listing-card-image:after{content:"";position:absolute;bottom:0;left:0;right:0;height:60%;background:linear-gradient(to top,rgba(0,0,0,.5),transparent);pointer-events:none}.listing-card-body{padding:var(--space-3) var(--space-3) var(--space-2)}.listing-category{display:inline-block;padding:4px 12px;background:var(--color-accent-light);color:var(--color-accent);font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2)}.listing-title{font-family:var(--font-heading);font-size:var(--text-xl);font-weight:700;color:var(--color-heading);margin-bottom:var(--space-1);line-height:var(--line-height-snug)}.listing-title a{color:inherit;text-decoration:none;transition:color var(--transition-fast)}.listing-title a:hover{color:var(--color-accent)}.listing-location{display:flex;align-items:center;gap:6px;font-size:var(--text-sm);color:var(--color-text-muted);margin-bottom:var(--space-2)}.listing-location:before{content:"";width:14px;height:14px;background:currentColor;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E");mask-size:contain;mask-repeat:no-repeat;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E");-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat;flex-shrink:0}.listing-description{font-size:var(--text-sm);color:var(--color-text);line-height:var(--line-height-base);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:var(--space-3)}.listing-footer{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);border-top:1px solid var(--color-border)}.listing-rating{display:flex;align-items:center;gap:4px;font-size:var(--text-sm);font-weight:600;color:var(--color-rating)}.how-it-works{padding:var(--space-12) 0;background:var(--color-bg)}.steps-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4);max-width:960px;margin:0 auto}.step-card{text-align:center;padding:var(--space-6) var(--space-4);background:var(--color-card-bg);border-radius:var(--radius-lg);border:1px solid var(--color-border);transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base)}.step-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:#c5a47e26}.step-number{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:var(--color-accent-light);border:2px solid var(--color-accent);font-family:var(--font-heading);font-size:var(--text-2xl);font-weight:800;color:var(--color-accent);margin-bottom:var(--space-3)}.step-card h3{font-size:var(--text-xl);margin-bottom:var(--space-2);color:var(--color-heading)}.step-card p{font-size:var(--text-sm);color:var(--color-text);line-height:var(--line-height-base)}.post-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4);background:transparent;border:none;margin-bottom:var(--space-4)}.post-card{background:var(--color-card-bg);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid var(--color-border);transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1),border-color var(--transition-base);padding:0;display:flex;flex-direction:column}.post-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-card-hover);border-color:#c5a47e33;background:var(--color-card-bg)}.post-card__image,.post-card-image{position:relative;width:100%;height:0;padding-bottom:56.25%;overflow:hidden;background-color:var(--color-surface);background-size:cover;background-position:center;background-repeat:no-repeat;border:none;display:block;margin:0;align-items:initial;justify-content:initial;color:transparent}.post-card__image:after,.post-card-image:after{content:"";position:absolute;bottom:0;left:0;right:0;height:50%;background:linear-gradient(to top,rgba(0,0,0,.4),transparent);pointer-events:none}.post-card__image img,.post-card-image img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.post-card:hover .post-card__image img,.post-card:hover .post-card-image img{transform:scale(1.04)}.post-card__content,.post-card-content{padding:var(--space-3);flex:1;display:flex;flex-direction:column}.post-card h2{font-family:var(--font-heading);font-size:var(--text-xl);font-weight:700;line-height:var(--line-height-snug);margin-bottom:var(--space-1);color:var(--color-heading);letter-spacing:-.01em}.post-card h2 a{color:var(--color-heading);text-decoration:none;transition:color var(--transition-fast)}.post-card h2 a:hover{color:var(--color-accent)}.post-card h3{font-family:var(--font-heading);font-size:var(--text-xl);font-weight:700;line-height:var(--line-height-snug);margin-bottom:var(--space-1);color:var(--color-heading)}.post-card h3 a{color:var(--color-heading);text-decoration:none;transition:color var(--transition-fast)}.post-card h3 a:hover{color:var(--color-accent)}.post-card__title{font-family:var(--font-heading);font-size:var(--text-xl);font-weight:700;line-height:var(--line-height-snug);margin-bottom:var(--space-1);color:var(--color-heading);letter-spacing:-.01em}.post-card__title a{color:var(--color-heading);text-decoration:none;transition:color var(--transition-fast)}.post-card__title a:hover{color:var(--color-accent)}.post-card__meta,.post-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-text-muted);margin-bottom:var(--space-2)}.meta{font-family:var(--font-body);font-size:var(--text-xs);color:var(--color-text-muted);letter-spacing:.02em;margin-bottom:var(--space-2);padding-bottom:var(--space-1);border-bottom:1px solid var(--color-border);text-transform:none}.meta time{font-weight:600}.meta a{color:var(--color-accent);text-decoration:none;font-weight:500;transition:color var(--transition-fast)}.meta a:hover{color:var(--color-accent-hover);text-decoration:none}.post-card__excerpt,.excerpt,.post-excerpt{font-family:var(--font-body);font-size:var(--text-sm);line-height:var(--line-height-base);color:var(--color-text);margin-bottom:var(--space-2);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;flex:1}.post-card-footer{padding:var(--space-2) var(--space-3);border-top:1px solid var(--color-border);margin-top:auto}.post-card__link,.read-more{font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;color:var(--color-accent);text-decoration:none;display:inline-flex;align-items:center;gap:6px;transition:color var(--transition-fast),gap var(--transition-fast);text-transform:none;letter-spacing:0}.post-card__link:hover,.read-more:hover{color:var(--color-accent-hover);gap:10px}.categories-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-3)}.category-card{background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-3);text-align:center;text-decoration:none;transition:transform var(--transition-base),border-color var(--transition-base),box-shadow var(--transition-base)}.category-card:hover{border-color:var(--color-accent);transform:translateY(-2px);box-shadow:var(--shadow-md)}.category-card:active{transform:translateY(0);box-shadow:none}.category-card h3{font-size:var(--text-base);color:var(--color-heading);margin-bottom:var(--space-1)}.category-card .count{font-size:var(--text-sm);color:var(--color-text-muted)}.category-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:var(--color-accent-light);border-radius:var(--radius-md);margin:0 auto var(--space-2);color:var(--color-accent);font-size:var(--text-2xl)}.categories,.tags{display:flex;flex-wrap:wrap;gap:var(--space-1);margin:var(--space-2) 0}.category,.tag{display:inline-block;padding:6px 14px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-full);font-family:var(--font-body);font-size:var(--text-xs);font-weight:500;color:var(--color-text);text-decoration:none;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast);text-transform:none;letter-spacing:.01em;min-height:36px}.category:hover,.tag:hover{background:var(--color-accent);color:var(--color-text-inverse);border-color:var(--color-accent);transform:translateY(-1px)}.category:active,.tag:active{transform:translateY(0)}.cta-banner{position:relative;background:linear-gradient(135deg,#c5a47e,#8b6914,#c5a47e);padding:var(--space-12) 0;text-align:center;overflow:hidden;border:none}.cta-banner:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,0,0,.1) 0%,transparent 50%,rgba(0,0,0,.15) 100%);pointer-events:none}.cta-banner h2{color:#0a0a0a;font-size:var(--text-3xl);font-weight:800;margin-bottom:var(--space-2);position:relative}.cta-banner p{color:#0a0a0acc;font-size:var(--text-lg);max-width:600px;margin:0 auto var(--space-5);position:relative}.cta-banner .button,.cta-banner .btn-primary{background:#0a0a0a;color:#c5a47e;border-color:#0a0a0a;position:relative}.cta-banner .button:hover,.cta-banner .btn-primary:hover{background:#141414;color:#d4b896;border-color:#141414;transform:translateY(-2px);box-shadow:0 8px 24px #0000004d}.cta-banner .button:active,.cta-banner .btn-primary:active{transform:translateY(0);box-shadow:none}.directory-header{background:var(--color-surface);padding:var(--space-10) 0;text-align:center;border-bottom:1px solid var(--color-border)}.directory-header h1{color:var(--color-heading);margin-bottom:var(--space-2)}.directory-header p{color:var(--color-text);font-size:var(--text-lg)}.filter-bar{display:flex;gap:var(--space-1);overflow-x:auto;padding:var(--space-3) 0;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch}.filter-bar::-webkit-scrollbar{display:none}.filter-pill{flex-shrink:0;padding:10px 22px;border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-card-bg);font-family:var(--font-body);font-size:var(--text-sm);font-weight:500;color:var(--color-text);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast);white-space:nowrap;min-height:44px;display:inline-flex;align-items:center}.filter-pill:hover{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-light)}.filter-pill:active{transform:scale(.97)}.filter-pill.active{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-text-inverse);font-weight:600}.directory-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4);padding:var(--space-4) 0}.pricing-section{padding:var(--space-12) 0;background:var(--color-section-alt)}.pricing-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4);max-width:1000px;margin:0 auto}.pricing-card{background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-6);text-align:center;transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base);position:relative}.pricing-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.pricing-featured,.pricing-card.featured{border-color:var(--color-accent);border-width:2px;box-shadow:0 4px 20px #c5a47e26}.pricing-featured:before,.pricing-card.featured:before{content:"Most Popular";position:absolute;top:-14px;left:50%;transform:translate(-50%);padding:4px 20px;background:var(--color-accent);color:var(--color-text-inverse);font-family:var(--font-body);font-size:var(--text-xs);font-weight:700;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.pricing-card h3{font-size:var(--text-xl);color:var(--color-heading);margin-bottom:var(--space-1)}.pricing-price{font-family:var(--font-heading);font-size:var(--text-5xl);font-weight:800;color:var(--color-heading);margin-bottom:var(--space-1);line-height:1}.pricing-price span{font-size:var(--text-base);color:var(--color-text-muted);font-family:var(--font-body);font-weight:400}.pricing-features{list-style:none;text-align:left;margin:var(--space-4) 0;padding:var(--space-4) 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.pricing-features li{padding:var(--space-1) 0;font-size:var(--text-sm);color:var(--color-text);display:flex;align-items:center;gap:var(--space-1)}.pricing-features li:before{content:"";width:18px;height:18px;background:var(--color-success);mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");mask-size:contain;-webkit-mask-size:contain;mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;flex-shrink:0}.contact-form{max-width:640px;margin:0 auto;background:var(--color-card-bg);padding:var(--space-6);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);border:1px solid var(--color-border)}.form-group{margin-bottom:var(--space-3)}.form-group label{display:block;font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;color:var(--color-heading);margin-bottom:var(--space-1)}.contact-form input,.contact-form textarea,.contact-form select,.form-group input,.form-group textarea,.form-group select{width:100%;padding:14px 16px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-base);color:var(--color-heading);background:var(--color-bg);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast);outline:none;min-height:48px}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus,.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light);background:var(--color-surface)}.contact-form textarea,.form-group textarea{min-height:140px;resize:vertical}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--color-text-muted)}.form-submit{display:inline-flex;align-items:center;justify-content:center;width:100%;padding:14px 28px;background:var(--color-accent);color:var(--color-text-inverse);font-family:var(--font-body);font-size:var(--text-base);font-weight:600;border:none;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast);min-height:48px}.form-submit:hover{background:var(--color-accent-hover);transform:translateY(-1px);box-shadow:0 4px 16px #c5a47e4d}.form-submit:active{transform:translateY(0);box-shadow:none}.form-submit:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.faq-section{padding:var(--space-10) 0;max-width:800px;margin:0 auto}.faq-list{max-width:740px;margin:0 auto}.faq-item{border-bottom:1px solid var(--color-border);padding:var(--space-3) 0}.faq-item summary,.faq-question{font-family:var(--font-heading);font-size:var(--text-lg);font-weight:600;color:var(--color-heading);cursor:pointer;padding:var(--space-1) 0;list-style:none;display:flex;align-items:center;justify-content:space-between;transition:color var(--transition-fast);min-height:44px}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";font-size:var(--text-xl);font-weight:300;color:var(--color-text-muted);transition:transform var(--transition-base),color var(--transition-base);flex-shrink:0;margin-left:var(--space-2)}.faq-item[open] summary:after{content:"-";color:var(--color-accent)}.faq-item summary:hover,.faq-question:hover{color:var(--color-accent)}.faq-answer{font-size:var(--text-base);color:var(--color-text);line-height:var(--line-height-base);padding:var(--space-2) 0;animation:fadeInDown .25s ease}.breadcrumbs{font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-muted);padding:var(--space-3) 0}.breadcrumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1);list-style:none;margin:0;padding:0}.breadcrumbs li{display:flex;align-items:center;gap:var(--space-1)}.breadcrumbs a{color:var(--color-text-muted);text-decoration:none;transition:color var(--transition-fast)}.breadcrumbs a:hover{color:var(--color-accent)}.breadcrumbs span{color:var(--color-border)}.article-header{max-width:var(--container-narrow);margin:0 auto;padding:var(--space-6) var(--space-3);text-align:center}.article-header h1{font-family:var(--font-heading);font-size:var(--text-4xl);font-weight:800;color:var(--color-heading);line-height:var(--line-height-tight);margin-bottom:var(--space-3)}.article-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-3);font-size:var(--text-sm);color:var(--color-text-muted)}.article-meta a{color:var(--color-accent);font-weight:500}.article-meta a:hover{color:var(--color-accent-hover)}article{max-width:var(--container-narrow);margin:0 auto;padding:0 var(--space-3) var(--space-8)}article h1{font-family:var(--font-heading);font-size:var(--text-4xl);font-weight:800;line-height:var(--line-height-tight);margin-bottom:var(--space-3);letter-spacing:-.03em;color:var(--color-heading)}.article-content{column-count:1;column-gap:0;column-rule:none}.article-content p,article p{font-family:var(--font-body);font-size:var(--text-lg);line-height:1.85;color:var(--color-text);margin-bottom:var(--space-4);text-align:left}.article-content h2,article h2{font-family:var(--font-heading);font-size:var(--text-3xl);font-weight:800;color:var(--color-heading);margin:var(--space-8) 0 var(--space-3);letter-spacing:-.025em;border-bottom:none;padding-bottom:0}.article-content h3,article h3{font-family:var(--font-heading);font-size:var(--text-2xl);font-weight:700;color:var(--color-heading);margin:var(--space-6) 0 var(--space-2)}.article-content ul,.article-content ol{margin:0 0 var(--space-4) var(--space-4);font-size:var(--text-lg);line-height:1.85;color:var(--color-text)}.article-content ul{list-style-type:disc}.article-content ol{list-style-type:decimal}.article-content li{margin-bottom:var(--space-1);padding-left:var(--space-1)}.article-content blockquote,article blockquote{border-left:4px solid var(--color-accent);padding:var(--space-3) var(--space-4);margin:var(--space-5) 0;background:var(--color-accent-light);border-radius:0 var(--radius-md) var(--radius-md) 0;font-style:italic;color:var(--color-heading);position:relative}.article-content blockquote:before,article blockquote:before{content:"“";font-family:"Noto Serif JP",Georgia,serif;font-size:3rem;color:var(--color-accent);opacity:.4;position:absolute;top:-8px;left:12px;line-height:1}.article-content blockquote p:last-child{margin-bottom:0}article figure{margin:var(--space-5) 0}article figcaption{font-size:var(--text-sm);color:var(--color-text-muted);text-align:center;margin-top:var(--space-1);font-style:italic}article code,.article-content code{background:var(--color-surface);color:var(--color-accent);padding:2px 8px;border-radius:4px;font-size:.9em;border:1px solid var(--color-border)}article pre,.article-content pre{background:var(--color-surface);color:var(--color-text);padding:var(--space-3);border-radius:var(--radius-md);overflow-x:auto;margin:var(--space-4) 0;border:1px solid var(--color-border)}article pre code,.article-content pre code{background:none;padding:0;border-radius:0;border:none;color:inherit}.article-content img,article img{max-width:100%;height:auto;border-radius:var(--radius-lg);margin:var(--space-5) 0;box-shadow:var(--shadow-md)}.article-content a{color:var(--color-accent);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;text-decoration-color:#c5a47e4d;transition:color var(--transition-fast),text-decoration-color var(--transition-fast)}.article-content a:hover{color:var(--color-accent-hover);text-decoration-color:var(--color-accent-hover)}.article-featured-image{width:100%;height:300px;background:var(--color-surface);border-radius:var(--radius-lg);margin:var(--space-4) 0;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--text-sm);overflow:hidden}.article-inline-image{width:100%;height:250px;background:var(--color-surface);border-radius:var(--radius-md);margin:var(--space-3) 0;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--text-sm);overflow:hidden}.toc,.toc-block,.wp-block-rank-math-toc-block{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);margin:var(--space-4) 0}.toc h2,.toc h3,.toc-block h2{font-family:var(--font-heading);font-size:var(--text-lg);font-weight:700;color:var(--color-heading);margin-bottom:var(--space-2);border-bottom:none;padding-bottom:0;margin-top:0}.toc ul,.toc nav ul,.toc-block ul{list-style:none;padding:0;margin:0}.toc li,.toc-block li{margin-bottom:4px}.toc a,.toc-block a{display:block;padding:6px 12px;font-size:var(--text-sm);color:var(--color-text);text-decoration:none;border-radius:var(--radius-sm);transition:color var(--transition-fast),background var(--transition-fast),padding-left var(--transition-fast);border-left:2px solid transparent}.toc a:hover,.toc-block a:hover{color:var(--color-accent);background:var(--color-accent-light);border-left-color:var(--color-accent);padding-left:16px}.toc a.active{color:var(--color-accent);background:var(--color-accent-light);border-left-color:var(--color-accent);font-weight:600}.related-posts{padding:var(--space-8) 0 0;border-top:1px solid var(--color-border);margin-top:var(--space-8)}.related-posts h2{border-bottom:none;text-align:center;padding-bottom:0;margin-bottom:var(--space-5)}.related-posts .post-grid{grid-template-columns:1fr}.share-buttons{display:flex;flex-wrap:wrap;gap:var(--space-1);align-items:center;padding:var(--space-3) 0}.share-buttons a,.share-buttons button{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 16px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500;color:var(--color-text);text-decoration:none;cursor:pointer;transition:border-color var(--transition-fast),color var(--transition-fast),background var(--transition-fast),transform var(--transition-fast);min-height:44px}.share-buttons a:hover,.share-buttons button:hover{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-light);transform:translateY(-1px)}.share-buttons a:active,.share-buttons button:active{transform:translateY(0)}.share-buttons svg{width:16px;height:16px}.post-nav{display:grid;grid-template-columns:1fr;gap:var(--space-3);padding:var(--space-6) 0;border-top:1px solid var(--color-border);margin-top:var(--space-6)}.post-nav a{display:block;padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);text-decoration:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.post-nav a:hover{border-color:var(--color-accent);box-shadow:var(--shadow-md);transform:translateY(-2px)}.post-nav span{display:block;font-size:var(--text-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600;margin-bottom:4px}.post-nav .post-nav__title{font-family:var(--font-heading);font-size:var(--text-base);font-weight:600;color:var(--color-heading);line-height:var(--line-height-snug)}.author-box{display:flex;gap:var(--space-3);padding:var(--space-4);background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);margin-top:var(--space-6);align-items:flex-start}.author-box img{width:72px;height:72px;border-radius:50%;object-fit:cover;flex-shrink:0;box-shadow:none;margin:0}.author-box h3{font-size:var(--text-lg);margin-bottom:var(--space-1)}.author-box p{font-size:var(--text-sm);color:var(--color-text)}.search-overlay{position:fixed;inset:0;background:#000000b3;z-index:var(--z-overlay);display:none;align-items:flex-start;justify-content:center;padding:20vh var(--space-3) var(--space-4);overflow-y:auto}@media(max-height:500px){.search-overlay{padding-top:var(--space-4)}}[data-theme=light] .search-overlay{background:#0f172a80}.search-overlay.active{display:flex;animation:fadeIn .2s ease}.search-box{width:100%;max-width:640px;margin:var(--space-4) auto;padding:0;background:transparent;border:none;position:relative}#search-input,.search-box input{width:100%;padding:14px 20px 14px 48px;border:1px solid var(--color-border);border-radius:var(--radius-lg);font-family:var(--font-body);font-size:var(--text-base);color:var(--color-heading);background:var(--color-card-bg);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);outline:none;min-height:48px}#search-input:focus,.search-box input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light);outline:none}.search-box:before{content:"";position:absolute;left:16px;top:50%;transform:translateY(-50%);width:20px;height:20px;background:var(--color-text-muted);mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E");mask-size:contain;-webkit-mask-size:contain;mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;pointer-events:none;z-index:1}.search-close{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:var(--space-1);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:color var(--transition-fast);z-index:1}.search-close:hover{color:var(--color-heading)}.search-results{position:absolute;top:100%;left:0;right:0;background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-top:var(--space-1);max-height:400px;overflow-y:auto;box-shadow:var(--shadow-xl);z-index:var(--z-dropdown);display:none}.search-results.active{display:block;animation:fadeInDown .2s ease}.search-result-item{display:block;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);text-decoration:none;transition:background var(--transition-fast)}.search-result-item:last-child{border-bottom:none}.search-result-item:hover{background:var(--color-surface-hover)}.search-result-item h4{font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;color:var(--color-heading);margin-bottom:2px}.search-result-item p{font-size:var(--text-xs);color:var(--color-text-muted);margin:0;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.button,.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);padding:14px 28px;background:var(--color-accent);color:var(--color-text-inverse);font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;border:2px solid var(--color-accent);border-radius:var(--radius-md);cursor:pointer;text-decoration:none;text-transform:none;letter-spacing:.01em;transition:background var(--transition-fast),color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast);white-space:nowrap;min-height:48px}.button:hover,.btn-primary:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover);color:var(--color-text-inverse);transform:translateY(-1px);box-shadow:0 4px 16px #c5a47e4d}.button:active,.btn-primary:active{transform:translateY(0);box-shadow:none}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);padding:14px 28px;background:transparent;color:var(--color-heading);font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;text-decoration:none;letter-spacing:.01em;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast);white-space:nowrap;min-height:48px}.btn-secondary:hover{background:var(--color-surface);border-color:var(--color-accent);color:var(--color-accent);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn-secondary:active{transform:translateY(0)}.btn-sm{padding:8px 16px;font-size:var(--text-xs);min-height:36px}.btn-lg{padding:18px 36px;font-size:var(--text-base);min-height:56px}.button-group{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.site-footer,footer{background:var(--color-surface);color:var(--color-text);padding:var(--space-10) 0 var(--space-4);margin-top:0;border-top:1px solid var(--color-border)}.footer-grid,footer .container{display:grid;grid-template-columns:1fr;gap:var(--space-5)}.footer-col>h3,footer h3{font-family:var(--font-body);font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--color-heading);margin-bottom:var(--space-3);padding-bottom:var(--space-2);position:relative}.footer-col>h3:after,footer h3:after{content:"";position:absolute;bottom:0;left:0;width:32px;height:2px;background:var(--color-accent)}footer ul{list-style:none;padding:0}footer li{margin-bottom:var(--space-1)}footer a{color:var(--color-text-muted);text-decoration:none;font-family:var(--font-body);font-size:var(--text-sm);transition:color var(--transition-fast),padding-left var(--transition-fast);display:inline-block;opacity:1}footer a:hover{color:var(--color-accent);padding-left:4px;opacity:1}footer p{font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-muted);opacity:1}.footer-bottom{text-align:center;padding-top:var(--space-5);margin-top:var(--space-5);border-top:1px solid var(--color-border)}.footer-bottom p{font-size:var(--text-sm);color:var(--color-text-muted)}footer .container.text-center{display:block;text-align:center;padding-top:var(--space-5);margin-top:var(--space-5);border-top:1px solid var(--color-border)}footer .container.text-center p{color:var(--color-text-muted)}footer .container.text-center h3:after{display:none}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-gold,.text-accent{color:var(--color-accent)}.text-white{color:var(--color-text-inverse)}.text-muted{color:var(--color-text-muted)}.font-heading{font-family:var(--font-heading)}.font-body{font-family:var(--font-body)}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-4)}.mt-3{margin-top:var(--space-6)}.mt-4{margin-top:var(--space-8)}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-4)}.mb-3{margin-bottom:var(--space-6)}.mb-4{margin-bottom:var(--space-8)}.pt-1{padding-top:var(--space-1)}.pt-2{padding-top:var(--space-4)}.pt-3{padding-top:var(--space-6)}.pt-4{padding-top:var(--space-8)}.pb-1{padding-bottom:var(--space-1)}.pb-2{padding-bottom:var(--space-4)}.pb-3{padding-bottom:var(--space-6)}.pb-4{padding-bottom:var(--space-8)}.mx-auto{margin-left:auto;margin-right:auto}.w-full{width:100%}.max-w-narrow{max-width:var(--container-narrow)}.rounded{border-radius:var(--radius-lg)}.shadow{box-shadow:var(--shadow-md)}.overflow-hidden{overflow:hidden}.visually-hidden,.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.bg-alt{background:var(--color-section-alt)}.bg-white{background:var(--color-bg)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes ctaPulse{0%,to{box-shadow:0 4px 12px #c5a47e33}50%{box-shadow:0 4px 24px #c5a47e66}}@keyframes goldGlow{0%,to{box-shadow:0 0 12px #c5a47e1a}50%{box-shadow:0 0 24px #c5a47e33}}.animate-fadeInUp{animation:fadeInUp .5s ease both}.animate-fadeIn{animation:fadeIn .4s ease both}.animate-fadeInDown{animation:fadeInDown .4s ease both}.animate-scaleIn{animation:scaleIn .3s ease both}.animate-delay-1{animation-delay:.1s}.animate-delay-2{animation-delay:.2s}.animate-delay-3{animation-delay:.3s}.animate-delay-4{animation-delay:.4s}.animate-delay-5{animation-delay:.5s}.skeleton{background:linear-gradient(90deg,var(--color-surface) 0%,var(--color-border) 20%,var(--color-surface) 40%,var(--color-surface) 100%);background-size:400% 100%;animation:shimmer 1.8s ease-in-out infinite;border-radius:var(--radius-sm)}.section-header{text-align:center;margin-bottom:var(--space-8)}.section-header h2{font-family:var(--font-heading);font-size:var(--text-3xl);font-weight:800;color:var(--color-heading);margin-bottom:var(--space-2);display:inline-block;border-bottom:none;padding-bottom:0}.section-header p{font-size:var(--text-lg);color:var(--color-text);max-width:600px;margin:0 auto}.listings-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4)}.listing-link{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast),gap var(--transition-fast);margin-top:auto;padding-top:var(--space-2)}.listing-link:hover{color:var(--color-accent-hover);gap:10px}.listing-link:after{content:"→"}.recent-articles{padding:var(--space-12) 0;background:var(--color-bg)}.categories-section{padding:var(--space-12) 0;background:var(--color-section-alt)}.category-count{font-size:var(--text-sm);color:var(--color-text-muted)}.featured-listings{padding:var(--space-12) 0;background:var(--color-section-alt)}.value-props{padding:var(--space-12) 0;background:var(--color-bg)}.benefits-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4)}.benefit-card{background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5) var(--space-4);text-align:center;transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base)}.benefit-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:#c5a47e26}.benefit-card h3{font-family:var(--font-body);font-size:var(--text-lg);font-weight:700;color:var(--color-heading);margin-bottom:var(--space-2)}.benefit-card p{font-size:var(--text-sm);color:var(--color-text);line-height:var(--line-height-base)}.contact-section{padding:var(--space-12) 0;background:var(--color-bg)}.form-embed{max-width:700px;margin:0 auto;background:var(--color-card-bg);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--color-border)}.form-embed iframe{width:100%;min-height:600px;border:none;display:block}.error-404,.page-404{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--space-16) var(--space-3);min-height:60vh}.error-404 h1,.page-404 h1{font-family:var(--font-heading);font-size:6rem;font-weight:800;color:var(--color-accent);line-height:1;margin-bottom:var(--space-3);letter-spacing:-.04em}.error-404 h2,.page-404 h2{font-family:var(--font-heading);font-size:var(--text-3xl);color:var(--color-heading);margin-bottom:var(--space-2)}.error-404 p,.page-404 p{font-size:var(--text-lg);color:var(--color-text-muted);max-width:480px;margin-bottom:var(--space-5)}.eyebrow{display:inline-block;font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;color:var(--color-accent);text-transform:uppercase;letter-spacing:.12em;margin-bottom:var(--space-2)}.hero .subtitle{font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border);max-width:500px;margin-left:auto;margin-right:auto}.stat-tagline{display:block;font-size:var(--text-xs);color:var(--color-text-muted);margin-top:4px;font-weight:400}.post-category{display:inline-block;padding:4px 12px;background:var(--color-accent-light);color:var(--color-accent);font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2)}.category-description{display:block;font-size:var(--text-xs);color:var(--color-text-muted);margin-top:4px}.about-section{padding:var(--space-12) 0;background:var(--color-bg)}.about-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4)}.about-card{background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5) var(--space-4);transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base)}.about-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:#c5a47e26}.about-card .card-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:var(--color-accent-light);border-radius:var(--radius-md);margin-bottom:var(--space-3);font-size:var(--text-2xl);line-height:1}.about-card h3{font-family:var(--font-body);font-size:var(--text-lg);font-weight:700;color:var(--color-heading);margin-bottom:var(--space-2)}.about-card p{font-size:var(--text-sm);color:var(--color-text);line-height:var(--line-height-base)}.trust-section{padding:var(--space-12) 0;background:var(--color-section-alt)}.trust-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4)}.trust-card{text-align:center;padding:var(--space-6) var(--space-4);background:var(--color-card-bg);border-radius:var(--radius-lg);border:1px solid var(--color-border);transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base)}.trust-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:#c5a47e26}.trust-card .card-icon{display:flex;align-items:center;justify-content:center;width:56px;height:56px;background:var(--color-accent-light);border:2px solid var(--color-accent);border-radius:50%;margin:0 auto var(--space-3);font-size:var(--text-2xl);color:var(--color-accent);line-height:1}.trust-card h3{font-family:var(--font-body);font-size:var(--text-lg);font-weight:700;color:var(--color-heading);margin-bottom:var(--space-2)}.trust-card p{font-size:var(--text-sm);color:var(--color-text);line-height:var(--line-height-base)}.guide-card{background:var(--color-card-bg);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid var(--color-border);transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1),border-color var(--transition-base);display:flex;flex-direction:column}.guide-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-card-hover);border-color:#c5a47e33}.guide-card-header{position:relative;width:100%;height:180px;overflow:hidden;display:flex;align-items:flex-end;padding:var(--space-3)}.guide-card-header .guide-badge{display:inline-block;padding:4px 12px;background:#000000b3;color:#fff;font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.05em}@supports (backdrop-filter: blur(8px)){.guide-card-header .guide-badge{background:#00000080;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}}.guide-card-body{padding:var(--space-3) var(--space-3) var(--space-4);flex:1;display:flex;flex-direction:column}.guide-card-body h3{font-family:var(--font-heading);font-size:var(--text-xl);font-weight:700;color:var(--color-heading);margin-bottom:var(--space-1);line-height:var(--line-height-snug)}.guide-card-body p{font-size:var(--text-sm);color:var(--color-text);line-height:var(--line-height-base);margin-bottom:var(--space-3);flex:1}.guide-card-body .guide-link{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast),gap var(--transition-fast);margin-top:auto}.guide-card-body .guide-link:hover{color:var(--color-accent-hover);gap:10px}.guides-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4)}@media(max-width:374px){.container{padding:0 var(--space-2)}.hero h1{font-size:var(--text-3xl)}.categories-grid{grid-template-columns:1fr}.search-overlay{padding-top:10vh}}@media(min-width:640px){.hero h1{font-size:var(--text-5xl)}.hero .lead{font-size:var(--text-xl)}.post-nav{grid-template-columns:1fr 1fr}.trust-stats{gap:var(--space-8)}}@media(min-width:768px){header h1{font-size:var(--text-3xl)}header p{display:block;font-size:var(--text-xs)}.hero h1{font-size:var(--text-5xl)}.hero .lead{font-size:var(--text-xl)}.post-grid,.listing-grid,.directory-grid,.grid-2,.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}.steps-grid{grid-template-columns:repeat(3,1fr)}.pricing-grid,.listings-grid,.benefits-grid,.about-grid,.trust-grid,.guides-grid,.related-posts .post-grid{grid-template-columns:repeat(2,1fr)}.footer-grid,footer .container{grid-template-columns:repeat(2,1fr)}.article-featured-image{height:400px}article h1,.article-header h1{font-size:var(--text-5xl)}.section-title{font-size:var(--text-4xl)}h1{font-size:var(--text-5xl)}h2{font-size:var(--text-3xl)}}@media(min-width:1024px){.container{padding:0 var(--space-4)}.nav-toggle{display:none}.nav-links{display:flex}header h1{font-size:var(--text-3xl)}nav ul{justify-content:flex-start}.hero{padding:var(--space-16) 0}.hero h1{font-size:var(--text-6xl)}.post-grid{grid-template-columns:repeat(3,1fr)}.post-card:first-child{grid-column:span 2}.post-card:first-child .post-card-image{padding-bottom:45%}.post-card:first-child h2{font-size:var(--text-2xl)}.listing-grid,.directory-grid,.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.pricing-grid,.listings-grid{grid-template-columns:repeat(3,1fr)}.benefits-grid{grid-template-columns:repeat(4,1fr)}.about-grid{grid-template-columns:repeat(3,1fr)}.trust-grid{grid-template-columns:repeat(4,1fr)}.guides-grid{grid-template-columns:repeat(3,1fr)}.guides-grid .guide-card:first-child{grid-column:span 2}.guides-grid .guide-card:first-child .guide-card-header{height:240px}.related-posts .post-grid{grid-template-columns:repeat(3,1fr)}.footer-grid,footer .container{grid-template-columns:repeat(4,1fr)}article{padding:0 var(--space-4) var(--space-10)}.article-featured-image{height:500px}.article-content p,article p{font-size:var(--text-lg);line-height:1.9}.cta-banner h2{font-size:var(--text-4xl)}}@media(min-width:1200px){.container{max-width:var(--container-max)}}@media(min-width:1440px){:root{--font-size-base: 17px}.container{max-width:var(--container-max)}.container-wide{max-width:var(--container-wide)}.hero h1{font-size:4.5rem}}.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;height:var(--bottom-nav-height);background:#0a0a0af2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--color-border);z-index:var(--z-header);justify-content:space-around;align-items:center;padding:0 var(--space-1)}@supports not (backdrop-filter: blur(12px)){.bottom-nav{background:#0a0a0afa}[data-theme=light] .bottom-nav{background:#faf8f5fa}}[data-theme=light] .bottom-nav{background:#faf8f5eb}.bottom-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:6px 0;color:var(--color-text-muted);text-decoration:none;font-size:10px;font-weight:500;transition:color var(--transition-fast);min-width:56px;min-height:44px}.bottom-nav-item svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5}.bottom-nav-item.active,.bottom-nav-item:hover{color:var(--color-accent)}body{padding-bottom:var(--bottom-nav-offset)}@media(min-width:1024px){.bottom-nav{display:none}body{padding-bottom:0}}@media(max-width:1023px){.site-footer,footer{padding-bottom:calc(var(--space-4) + var(--bottom-nav-offset))}}.reading-progress{position:fixed;top:0;left:0;width:0%;height:3px;background:linear-gradient(90deg,var(--color-accent),var(--color-accent-hover));z-index:calc(var(--z-header) + 2);transition:width 50ms linear;pointer-events:none;box-shadow:0 0 8px #c5a47e66}main{min-height:calc(100vh - 200px);padding:var(--space-4) 0;background:var(--color-bg)}main>.container>section{padding:var(--space-6) 0}main>.container>section>h2{font-family:var(--font-heading);font-size:var(--text-3xl);font-weight:800;color:var(--color-heading);margin-bottom:var(--space-5);padding-bottom:0;border-bottom:none;display:block}::selection{background:#c5a47e40;color:var(--color-heading)}::-moz-selection{background:#c5a47e40;color:var(--color-heading)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.loading{pointer-events:none;opacity:.6}.page-transition{animation:fadeIn .3s ease}.post-card-image:empty{background:linear-gradient(135deg,var(--color-surface) 0%,var(--color-border) 100%)}.post-card-image:empty:after{content:"";display:none}@media print{*,*:before,*:after{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}header,nav,.site-header,.main-nav,.nav-toggle,.theme-toggle,footer,.site-footer,.search-box,.search-overlay,.button,.btn-primary,.btn-secondary,.btn-nav,.hero-buttons,.cta-banner,.trust-bar,.filter-bar,.bottom-nav,.reading-progress,.share-buttons,.toc{display:none!important}body{font-family:Georgia,Times New Roman,serif;font-size:12pt;line-height:1.5;padding-bottom:0}main{background:#fff}.container{max-width:100%;padding:0}h1{font-size:24pt}h2{font-size:18pt}h3{font-size:14pt}.post-card,.listing-card{break-inside:avoid;border:1px solid #ccc;page-break-inside:avoid}article{max-width:100%}a{text-decoration:underline}a[href]:after{content:" (" attr(href) ")";font-size:.8em}img{max-width:100%!important}.post-grid,.listing-grid{display:block}.post-card,.listing-card{margin-bottom:1rem}}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:2px}:focus:not(:focus-visible){outline:none}a:focus-visible,button:focus-visible,[role=button]:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.category-card:focus-visible,.post-card:focus-visible,.listing-card:focus-visible,.guide-card:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.bottom-nav-item:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.skip-to-content{position:absolute;top:-100%;left:var(--space-3);z-index:var(--z-skip);padding:var(--space-2) var(--space-3);background:var(--color-accent);color:var(--color-text-inverse);font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;border-radius:0 0 var(--radius-md) var(--radius-md);transition:top var(--transition-fast);text-decoration:none}.skip-to-content:focus,.skip-to-content:focus-visible{top:0;outline:2px solid var(--color-heading);outline-offset:2px}.sr-only:not(:focus):not(:active){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}html{scroll-behavior:auto}.post-card:hover,.listing-card:hover,.step-card:hover,.pricing-card:hover,.benefit-card:hover,.about-card:hover,.trust-card:hover,.guide-card:hover,.category-card:hover,.category:hover,.tag:hover,.share-buttons a:hover,.share-buttons button:hover,.listing-card:hover .listing-card-image img,.post-card:hover .post-card-image img,.post-card:hover .post-card__image img{transform:none}}@media(prefers-color-scheme:light){:root:not([data-theme]){--color-bg: #faf8f5;--color-surface: #ffffff;--color-surface-hover: #f5f0eb;--color-accent: #8b6914;--color-accent-hover: #a07a1a;--color-accent-light: rgba(139, 105, 20, .08);--color-accent-soft: rgba(139, 105, 20, .04);--color-text: #3d3529;--color-text-muted: #8a8078;--color-text-inverse: #ffffff;--color-heading: #1a1510;--color-border: #e8e0d8;--color-border-light: #f0ebe5;--color-card-bg: #ffffff;--color-section-alt: #f5f0eb;--color-success: #059669;--color-error: #dc2626;--color-rating: #d97706;--color-primary-dark: #1a1510;--color-primary: #8b6914;--color-warm-white: #faf8f5;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 40px rgba(0, 0, 0, .1);--shadow-card-hover: 0 12px 28px rgba(0, 0, 0, .12)}:root:not([data-theme]) .site-header{background:#faf8f5f2}@supports (backdrop-filter: blur(12px)){:root:not([data-theme]) .site-header{background:#faf8f5d9}}:root:not([data-theme]) .site-header.scrolled{box-shadow:0 4px 12px #00000014;background:#faf8f5f2}:root:not([data-theme]) .bottom-nav{background:#faf8f5f2}:root:not([data-theme]) .search-overlay{background:#0f172a80}:root:not([data-theme]) .main-nav.open:before{background:#0f172a66}:root:not([data-theme]) .main-nav.open .nav-links{box-shadow:-4px 0 24px #0000001f}}
