:root{--page:#fbfaf9;--surface:#fff;--soft:#f7f3ef;--text:#2c1c11;--muted:#846d5c;--primary:#944b1f;--primary-hover:#783a17;--border:#ded7cf;--radius:8px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;background:var(--page);color:var(--text);font:16px/1.65 system-ui,-apple-system,'Noto Sans Kannada',sans-serif}
a{color:inherit;text-underline-offset:4px}
button,input,select,textarea{font:inherit}
button,a,input,select,textarea{touch-action:manipulation}
button{cursor:pointer}
button:disabled{cursor:default;opacity:.6}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--primary);outline-offset:3px}
h1,h2,h3,p{margin:0 0 1rem}
h1,h2,h3{font-family:inherit;font-style:normal;letter-spacing:-.035em}
h1{font-size:clamp(2.8rem,5vw,3.75rem);font-weight:750;line-height:1.12}
h2{font-size:clamp(2rem,3vw,2.85rem);font-weight:700;line-height:1.18}
h3{font-size:1.2rem;line-height:1.35;font-weight:700}
em{font-style:normal}
small,.small{font-size:.85rem;line-height:1.6}
.muted,.fine{color:var(--muted)}
.fine{font-size:.82rem}
.wrap{max-width:1180px;margin:auto;padding-inline:28px}
.skip{position:fixed;top:-80px;left:20px;z-index:100;background:var(--surface);padding:12px}
.skip:focus{top:12px}
.header{border-bottom:1px solid var(--border);background:#fbfaf9f5;position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}
.header .wrap{display:flex;align-items:center;justify-content:space-between;min-height:84px;gap:20px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;line-height:1.15}
.brand img{width:64px;height:64px;object-fit:contain;flex:none}
.brand strong{display:block;font-size:.86rem;font-weight:700;letter-spacing:0}
.brand small{display:block;font-size:.59rem;letter-spacing:.04em;margin-top:5px;text-transform:uppercase;color:var(--muted)}
.nav{display:flex;align-items:center;gap:27px;font-size:1rem;font-weight:550}
.nav a{text-decoration:none}
.nav a:hover,.footer a:hover{color:var(--primary)}
.lang{border:1px solid var(--border);border-radius:var(--radius);padding:8px 14px;min-height:44px}
.menu{display:none}
.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--primary);margin-bottom:18px}
.hero{display:block;text-align:center;padding-top:105px;padding-bottom:100px}
.hero>div{max-width:820px;margin:auto}
.hero .small{margin-bottom:14px}
.hero h1{max-width:790px;margin:0 auto}
.hero h1 em{color:var(--primary);font-weight:inherit}
.hero .lead{font-size:1.13rem;line-height:1.75;max-width:650px;margin:25px auto;color:var(--muted)}
.hero .buttons{justify-content:center}
.hero .fine{max-width:580px;margin:auto}
.buttons{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0}
.btn{border:1px solid var(--primary);background:var(--primary);color:#fff;display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:11px 21px;border-radius:6px;text-decoration:none;font-size:.9rem;font-weight:650;line-height:1.35}
.btn:hover{background:var(--primary-hover);border-color:var(--primary-hover);color:#fff}
.btn.secondary{background:transparent;color:var(--primary);border-color:var(--border)}
.btn.secondary:hover{background:var(--soft);color:var(--primary)}
.strip{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface);padding:18px 0}
.strip .wrap{display:flex;justify-content:center;gap:42px;font-size:.84rem;font-weight:550;color:#5e4938}
.section{padding:78px 0}
.section-head{max-width:760px;margin:0 auto 40px;text-align:center}
.section-head p{color:var(--muted)}
.guide-shell{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:start}
.guide-form{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:30px;box-shadow:0 8px 30px #2c1c1108}
.field{margin-bottom:22px}
.field label,.field legend{display:block;font-weight:650;margin-bottom:8px}
.field-row{display:grid;grid-template-columns:1fr 125px;gap:8px}
input[type=number],select{width:100%;min-height:48px;padding:11px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text)}
input[type=checkbox]{width:20px;height:20px;accent-color:var(--primary);flex:none}
.check{display:flex!important;align-items:flex-start;gap:12px;font-size:.9rem;font-weight:400!important;margin-top:12px}
.check input{margin-top:4px}
.guide-form .btn{width:100%}
.result{padding:28px;background:var(--soft);border:1px solid var(--border);border-radius:var(--radius);margin-top:24px}
.result:focus{outline:none}
.result h3{font-size:1.5rem}
.result ul{padding-left:20px}
.result .tag{display:inline-block;background:#efe2d7;color:var(--primary);padding:4px 10px;border-radius:5px;font-size:.74rem;font-weight:650;margin-bottom:14px}
.error{color:#9b332c;font-weight:600}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{padding:28px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:0 4px 18px #2c1c1105}
.card .number{width:40px;height:40px;background:var(--soft);color:var(--primary);display:grid;place-items:center;border-radius:6px;font-size:1rem;font-weight:700;margin-bottom:20px}
.card p{color:var(--muted);font-size:.95rem}
.card a{font-size:.87rem;color:var(--primary)}
.dark{background:var(--soft);color:var(--text);border-block:1px solid var(--border)}
.dark .eyebrow{color:var(--primary)}
.dark .muted{color:var(--muted)}
.dark .cards{grid-template-columns:1fr 1fr}
.dark .card{background:var(--surface);border-color:var(--border)}
.dark .card p{color:var(--muted)}
.dark .btn{background:var(--primary);border-color:var(--primary);color:#fff}
.tool-label{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--primary)!important;font-weight:700;margin-bottom:22px}
.steps{counter-reset:step;padding:0}
.steps li{list-style:none;padding:20px 0;border-bottom:1px solid var(--border);display:flex;gap:20px}
.steps li:before{counter-increment:step;content:'0' counter(step);font-size:.82rem;font-weight:700;color:var(--primary);padding-top:5px}
.faq{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px}
details{border-bottom:1px solid var(--border);padding:20px 0}
summary{cursor:pointer;font-weight:650;min-height:32px}
details p{margin:14px 0 0;color:var(--muted)}
.contact{background:var(--soft);border:1px solid var(--border);border-radius:var(--radius);padding:42px;display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:center}
.contact h2{font-size:2.5rem}
.footer{padding:52px 0 25px;border-top:1px solid var(--border);background:var(--surface)}
.footer-top{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px}
.footer-links{display:flex;flex-direction:column;gap:11px;font-size:.86rem}
.footer-bottom{border-top:1px solid var(--border);margin-top:35px;padding-top:22px;font-size:.78rem;color:var(--muted)}
.footer .brand{margin-bottom:18px}
.footer p{max-width:480px}
.legal{max-width:850px;margin:auto;padding:70px 28px}
.legal h1{font-size:clamp(2.5rem,5vw,3.8rem);margin:25px 0}
.legal h2{letter-spacing:0;font-size:1.25rem;line-height:1.5;margin-top:36px}
.legal p{color:var(--muted)}
.legal .crumb{font-size:.85rem}
.mobile-cta{display:none}
button.link{background:none;border:0;text-decoration:underline;color:var(--primary);padding:10px 0;min-height:44px}
.source-note{border-left:3px solid var(--primary);padding-left:18px;margin-top:25px;font-size:.83rem;color:var(--muted)}
.official-source{display:flex;align-items:center;gap:18px;margin:18px 0}
.official-source img{width:78px;height:auto;flex:none;object-fit:contain}
.official-source span{font-weight:650;color:var(--primary)}
.hidden,[hidden]{display:none!important}
.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--text);color:#fff;border-radius:var(--radius);padding:12px 24px;z-index:50;max-width:90vw}
.pill{display:inline-block;padding:4px 12px;border:1px solid var(--border);border-radius:6px;font-size:.75rem}
.no-break{white-space:nowrap}
.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}
.assistant-widget{position:fixed;right:24px;bottom:24px;z-index:40}
.assistant-launch{display:flex;align-items:center;gap:12px;background:var(--primary);color:#fff;border:1px solid var(--primary);padding:10px 16px;border-radius:8px;box-shadow:0 10px 26px #2c1c1124;min-height:54px;font-size:.9rem;font-weight:650}
.assistant-launch:hover{background:var(--primary-hover)}
.assistant-launch img{border-radius:5px;background:white}
.assistant-panel{position:absolute;bottom:72px;right:0;width:400px;height:min(650px,calc(100dvh - 110px));background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 18px 60px #2c1c112b;display:flex;flex-direction:column;overflow:hidden}
.assistant-panel[hidden]{display:none}
.assistant-head{display:flex;align-items:center;gap:12px;padding:15px;border-bottom:1px solid var(--border);background:var(--soft)}
.assistant-head strong{font-size:.98rem;display:block}
.assistant-head small{display:block;font-size:.68rem;color:var(--muted)}
.assistant-head img{object-fit:contain;background:white;border-radius:5px}
.assistant-close{margin-left:auto;min-width:44px;min-height:44px;border:0;background:transparent;color:var(--text);font-size:1.7rem}
.assistant-status{padding:8px 18px;font-size:.71rem;color:var(--muted);margin:0;border-bottom:1px solid var(--border)}
.assistant-messages{flex:1;overflow-y:auto;padding:18px;min-height:90px;overscroll-behavior:contain}
.assistant-message{padding:12px 14px;background:var(--soft);border-radius:var(--radius);margin:0 20px 12px 0;font-size:.87rem;line-height:1.6;overflow-wrap:anywhere}
.assistant-message p{margin:0;white-space:pre-wrap}
.assistant-message.user{background:var(--primary);color:white;margin:0 0 12px 30px}
.assistant-message a{display:block;font-size:.75rem;margin-top:9px;color:var(--primary)}
.assistant-options{padding:0 16px 12px;display:flex;flex-wrap:wrap;gap:7px}
.assistant-options button{border:1px solid var(--border);background:white;color:var(--primary);padding:9px 12px;border-radius:6px;font-size:.8rem;min-height:44px;max-width:100%}
.assistant-form{display:flex;align-items:center;gap:8px;margin:0 14px;padding:9px;border:1px solid var(--border);border-radius:var(--radius);background:white}
.assistant-form textarea{font:inherit;font-size:.86rem;line-height:1.4;min-width:0;flex:1;border:0;resize:none;background:transparent;max-height:100px;padding:4px;color:var(--text)}
.assistant-form .btn{padding:0;min-width:44px;min-height:44px;font-size:1.3rem}
.assistant-notice{font-size:.64rem;line-height:1.5;padding:8px 16px 0;margin:0;color:var(--muted)}
.assistant-reset{background:none;border:0;padding:8px;color:var(--primary);font-size:.72rem;min-height:36px}
@media(max-width:850px){.nav{gap:14px}.guide-shell{gap:30px}.cards{gap:12px}.card{padding:22px}.wrap{padding-inline:22px}.faq{gap:30px}}
@media(max-width:680px){html{scroll-padding-top:80px}.header .wrap{min-height:76px}.brand img{width:54px;height:54px}.brand strong{font-size:.73rem}.brand small{font-size:.5rem}.menu{display:block;background:none;border:1px solid var(--border);border-radius:6px;padding:8px 12px;min-height:44px}.nav{display:none;position:absolute;left:0;right:0;top:76px;background:var(--page);padding:18px 24px;box-shadow:0 12px 18px #2c1c1111;flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav a{padding:8px}.hero{padding-top:72px;padding-bottom:70px}.hero h1{font-size:clamp(2.55rem,10vw,3.3rem)}.hero .lead{font-size:1rem;margin-top:20px}.hero .buttons{margin-bottom:14px}.strip .wrap{flex-wrap:wrap;gap:8px 20px;font-size:.74rem}.section{padding:55px 0}.guide-shell,.cards,.dark .cards,.faq,.contact,.footer-top{grid-template-columns:1fr}.guide-shell{gap:22px}.guide-form{padding:22px}.section-head{margin-bottom:26px}.result{padding:22px}.contact{padding:27px;gap:10px}.contact h2{font-size:2.2rem}.mobile-cta{display:block;position:fixed;bottom:0;left:0;right:0;padding:10px 20px max(10px,env(safe-area-inset-bottom));background:#fbfaf9f5;border-top:1px solid var(--border);z-index:15}.mobile-cta .btn{width:100%;min-height:45px}.footer{padding-bottom:100px}.footer-top{gap:25px}.toast{bottom:90px}.legal{padding:42px 22px}.btn{padding:12px 18px}.assistant-widget{right:14px;bottom:84px}.assistant-launch{padding:9px 12px;min-height:48px;font-size:.77rem}.assistant-launch img{width:29px;height:29px}.assistant-launch span:last-child{display:none}.assistant-panel{position:fixed;left:10px;right:10px;bottom:12px;width:auto;height:min(680px,calc(100dvh - 24px))}.assistant-head{padding:12px}.official-source img{width:65px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
@media print{.header,.footer,.mobile-cta,.buttons,.hero,.strip,.no-print,form,.section:not(#guide),.assistant-widget{display:none!important}body{background:white;color:black;font-size:12pt}.section{padding:0}.wrap{max-width:none;padding:0}.guide-shell{display:block}.result{border:1px solid #aaa;break-inside:avoid;background:white}.result[hidden]{display:none!important}.result a:after{content:' (' attr(href) ')';font-size:8pt;word-break:break-all}.legal{padding:0;max-width:none}.legal h1{font-size:28pt}.source-note{font-size:10pt}}
