*{margin:0;padding:0;border:0;box-sizing:border-box}:root{font-family:Geologica,sans-serif;background:var(--color-primary);color:var(--color-text);min-height:100vh;--color-primary: #f0f4f5;--color-accent: #390007;--color-text: #820201}p{font-size:1.2em}.invitation-container{max-width:600px;width:100%;text-align:center;display:flex;flex-direction:column;gap:30px;padding-inline:20px;margin-inline:auto}.invitation-header{color:var(--color-primary);position:relative;z-index:1;display:flex;align-items:center;flex-direction:column;gap:15px;margin-top:50px}.invitation-header h1{text-transform:uppercase;font-weight:400}.invitation-header .wedding-day{font-family:Great Vibes,cursive;text-transform:capitalize;font-size:2.5em}.appeal{margin-top:15px}.appeal span{font-family:Great Vibes,cursive;font-weight:600;font-size:48px}.header-background{position:absolute;top:0;left:0;z-index:0;height:500px;width:100vw;background:var(--color-accent)}.photo{max-width:100%;position:relative;z-index:1}.section-header{font-size:2.5em;font-family:Great Vibes,cursive}.date-section{display:flex;flex-direction:column;align-items:center}.date-section p{margin-top:15px}.date-section .calendar{display:grid;grid-template-columns:repeat(7,min-content)}.date-section .calendar span{padding:5px 8px}.date-section .calendar .target-day{border-radius:50%;border:2px dashed var(--color-text)}.place-section{padding-block:10px;padding-top:15px;background-color:var(--color-accent);color:var(--color-primary);width:100vw;margin:0;margin-block:30px}.place-section .section-header{line-height:100%}.place-section p{font-size:25px}.form-section{margin-bottom:50px}form{margin-top:20px;display:flex;flex-direction:column;gap:18px;align-items:center}form fieldset{border:none;display:inline-block}form .name{display:flex;flex-direction:column;align-items:start;gap:5px;width:100%}form .name .name-input{font-size:16px;width:100%;line-height:150%;display:block;border:none;border-bottom:1px solid var(--color-text);border-radius:0;outline:none;padding:3px;background-color:var(--color-primary);flex:1}form .radio-group{flex-wrap:wrap;display:flex;align-items:start;text-align:start;gap:5px;row-gap:10px}form #group{display:flex;gap:10px;height:fit-content;align-items:center}form #group input[type=radio]{height:fit-content;position:absolute;visibility:hidden}form #group input[type=radio]:checked+label:before{background-color:var(--color-text);box-shadow:inset 0 0 0 4px #fff}form #group div{display:flex;align-items:center;gap:5px}form #group label{font-size:.8em;padding-left:23px;position:relative;height:17px}form #group label:before{content:"";display:inline-block;left:0;width:15px;height:15px;position:absolute;border-radius:50%;border:1px solid var(--color-text)}form .submit-button{margin-top:15px;cursor:pointer;padding:10px 20px;border:none;background:var(--color-accent);color:var(--color-primary);font-size:15px;font-weight:500;border-radius:20px}
