:root{--sun-paper:#f4f0e7;--sun-navy:#0d1b2a;--sun-brass:#b58a46;--sun-ink:#1f2a34;--sun-line:rgba(13,27,42,.18)}
.hf-sun-hero{background:var(--sun-navy);color:#fff;padding:clamp(6rem,10vw,9rem) 0 5rem;overflow:hidden}
.hf-sun-hero .hf-crumb a,.hf-sun-hero .hf-crumb span{color:rgba(255,255,255,.72)}
.hf-sun-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);gap:clamp(2.5rem,6vw,6rem);align-items:center}
.hf-sun-hero h1{font-size:clamp(3.4rem,7vw,6.8rem);line-height:.91;letter-spacing:-.055em;max-width:10ch;margin:.5rem 0 1.5rem}
.hf-sun-hero p{max-width:62ch;color:rgba(255,255,255,.78);font-size:1.05rem;line-height:1.75}
.hf-sun-hero-action{display:inline-flex;gap:.65rem;margin-top:1.3rem;padding:.95rem 1.2rem;border:1px solid rgba(255,255,255,.35);color:#fff;text-decoration:none}
.hf-sun-dial{margin:0;border:1px solid rgba(255,255,255,.22);padding:1.25rem;background:rgba(255,255,255,.035)}
.hf-sun-ring{aspect-ratio:1;border:1px solid rgba(255,255,255,.28);border-radius:50%;position:relative;max-width:460px;margin:auto;background:radial-gradient(circle at 50% 50%,rgba(181,138,70,.16),transparent 44%)}
.hf-sun-ring:before,.hf-sun-ring:after{content:"";position:absolute;background:rgba(255,255,255,.22)}
.hf-sun-ring:before{width:1px;height:100%;left:50%}.hf-sun-ring:after{height:1px;width:100%;top:50%}
.hf-sun-ring span{position:absolute;font:600 .7rem/1 sans-serif;letter-spacing:.2em}.hf-sun-ring .n{top:5%;left:49%}.hf-sun-ring .s{bottom:5%;left:49%}.hf-sun-ring .e{right:5%;top:49%}.hf-sun-ring .w{left:5%;top:49%}
.hf-sun-ring i{position:absolute;width:22%;aspect-ratio:1;border-radius:50%;background:var(--sun-brass);right:15%;top:17%;box-shadow:0 0 50px rgba(181,138,70,.35)}
.hf-sun-dial figcaption{display:flex;justify-content:space-between;gap:1rem;margin-top:1rem;font-size:.66rem;letter-spacing:.14em;color:rgba(255,255,255,.6)}
.hf-sun-principle{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(2rem,6vw,6rem);padding-top:5rem;padding-bottom:5rem}
.hf-sun-principle h2,.hf-sun-head h2,.hf-sun-sources h2{font-size:clamp(2.4rem,5vw,4.5rem);line-height:.98;letter-spacing:-.045em;margin:.35rem 0}
.hf-sun-principle p{font-size:1.02rem;line-height:1.8;color:#4b535a}
.hf-sun-study{background:var(--sun-paper);padding:5rem 0}
.hf-sun-head{max-width:850px;margin-bottom:2rem}.hf-sun-head>p:last-child{max-width:68ch;line-height:1.7}
.hf-sun-orientations{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--sun-line);border:1px solid var(--sun-line)}
.hf-sun-orientations button{border:0;background:#faf7f0;text-align:left;padding:1.35rem;min-height:180px;color:var(--sun-ink);cursor:pointer}
.hf-sun-orientations button[aria-pressed="true"]{background:var(--sun-navy);color:#fff}
.hf-sun-orientations button span{display:block;font-size:.65rem;letter-spacing:.16em;color:var(--sun-brass);margin-bottom:1rem}
.hf-sun-orientations button strong{display:block;font-size:1.1rem;margin-bottom:.55rem}
.hf-sun-orientations button small{font-size:.82rem;line-height:1.5;opacity:.76}
.hf-sun-panel{display:grid;grid-template-columns:.85fr 1.15fr;border:1px solid var(--sun-line);border-top:0;background:#fff}
.hf-sun-visual{padding:1.5rem;border-right:1px solid var(--sun-line)}.hf-sun-sky{aspect-ratio:4/3;position:relative;background:linear-gradient(#dfe8ec 0 62%,#d8d1bd 62%);overflow:hidden;margin-bottom:1.4rem}
.hf-sun-sky [data-sun-disc]{position:absolute;width:56px;aspect-ratio:1;border-radius:50%;background:var(--sun-brass);top:18%;left:18%;transition:transform .25s ease}
.hf-sun-visual[data-orientation="east"] [data-sun-disc]{transform:translate(-10px,35px)}
.hf-sun-visual[data-orientation="south"] [data-sun-disc]{transform:translate(120px,-5px)}
.hf-sun-visual[data-orientation="west"] [data-sun-disc]{transform:translate(220px,45px)}
.hf-sun-house{position:absolute;left:33%;bottom:19%;width:42%;height:28%;background:var(--sun-navy)}.hf-sun-house:before{content:"";position:absolute;left:-8%;top:-36%;border-left:80px solid transparent;border-right:80px solid transparent;border-bottom:70px solid var(--sun-navy)}
.hf-sun-shadow{position:absolute;left:24%;bottom:8%;width:55%;height:9%;background:rgba(13,27,42,.22);transform:skewX(-30deg)}
.hf-sun-visual h3{font-size:2rem;margin:.2rem 0 .6rem}.hf-sun-visual p{line-height:1.65}
.hf-sun-form{padding:1.5rem;display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.hf-sun-form label{display:grid;gap:.4rem;font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.hf-sun-form label:nth-of-type(n+3){grid-column:1/-1}
.hf-sun-form input,.hf-sun-form select,.hf-sun-form textarea{width:100%;border:1px solid var(--sun-line);background:#fcfbf7;padding:.85rem;font:inherit;text-transform:none;letter-spacing:0;color:var(--sun-ink)}
.hf-sun-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.55rem}.hf-sun-actions[hidden]{display:none!important}.hf-sun-actions button{border:1px solid var(--sun-navy);background:transparent;padding:.75rem .9rem}.hf-sun-actions button:first-child{background:var(--sun-navy);color:#fff}
.hf-sun-status{grid-column:1/-1;min-height:1.25rem;color:#59616a}.hf-sun-noscript{grid-column:1/-1}
.hf-sun-note{margin-top:1.25rem;border:1px solid var(--sun-line);background:#fff;padding:1.5rem}.hf-sun-note h3{font-size:1.8rem;margin:.2rem 0 1rem}.hf-sun-note-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--sun-line)}.hf-sun-note-grid>div{background:#fff;padding:1rem}.hf-sun-note-grid span{font-size:.64rem;letter-spacing:.14em;color:#6d7478}.hf-sun-note-grid p{margin:.45rem 0 0;line-height:1.55}
.hf-sun-sources{padding:5rem 0;background:#fff}.hf-sun-source-links{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--sun-line);margin:2rem 0}.hf-sun-source-links a{padding:1.35rem;text-decoration:none;color:inherit;display:grid;grid-template-columns:1fr auto;gap:.6rem;border-right:1px solid var(--sun-line)}.hf-sun-source-links a:last-child{border-right:0}.hf-sun-source-links strong{grid-column:1/-1}.hf-sun-source-links span{line-height:1.55;color:#61676d}.hf-sun-related{display:flex;flex-wrap:wrap;gap:1rem;margin:2rem 0}.hf-sun-related a{color:inherit}.hf-sun-sources small{font-size:.65rem;letter-spacing:.08em}
@media(max-width:860px){.hf-sun-hero-grid,.hf-sun-principle,.hf-sun-panel{grid-template-columns:1fr}.hf-sun-orientations{grid-template-columns:1fr 1fr}.hf-sun-visual{border-right:0;border-bottom:1px solid var(--sun-line)}}
@media(max-width:520px){.hf-sun-orientations,.hf-sun-form,.hf-sun-note-grid,.hf-sun-source-links{grid-template-columns:1fr}.hf-sun-form label{grid-column:1/-1}.hf-sun-source-links a{border-right:0;border-bottom:1px solid var(--sun-line)}.hf-sun-dial figcaption{flex-direction:column}.hf-sun-hero h1{font-size:3.6rem}}
@media(prefers-reduced-motion:reduce){.hf-sun-sky [data-sun-disc]{transition:none}}
@media print{header,.hf-sun-hero,.hf-sun-principle,.hf-sun-head,.hf-sun-orientations,.hf-sun-visual,.hf-sun-form,.hf-sun-sources{display:none!important}.hf-sun-study{padding:0;background:#fff}.hf-sun-panel{display:block;border:0}.hf-sun-note{border:1px solid #000}.hf-sun-note-grid{display:grid}}

/* Keep contextual navigation usable as a touch target without changing its type or destination. */
@media screen{.hf-sun-related a{display:inline-flex;align-items:center;min-height:44px;max-width:100%;box-sizing:border-box}}
